Aracılığıyla paylaş


.NET'te genel arabirimler

Bu makale, .NET'in genel tür aileleri arasında ortak işlevler sağlayan genel arabirimlerine genel bir bakış sunmaktadır.

Genel arabirimler, sıralama ve eşitlik karşılaştırmaları için ve genel koleksiyon türleri tarafından paylaşılan işlevler için genel olmayan arabirimlere tür açısından güvenli karşılıklar sağlar. .NET 7, sayı benzeri türler için genel arabirimler sunar. Örneğin, System.Numerics.INumber<TSelf>. Bu arabirimler, genel tür parametresinin genel, sayısal arabirim uygulayan bir tür olacak şekilde kısıtlandığı matematiksel işlevler sağlayan genel yöntemler tanımlamanıza olanak sağlar.

Uyarı

Çeşitli genel arabirimlerin tür parametreleri birlikte değişken veya değişken karşıtı olarak işaretlenir ve bu arabirimleri uygulayan türleri atama ve kullanma konusunda daha fazla esneklik sağlar. Daha fazla bilgi için bkz. Kovaryans ve Kontravaryans.

Eşitlik ve sıralama karşılaştırmaları

Koleksiyon işlevi

  • Genel ICollection<T> arabirim, genel koleksiyon türleri için temel arabirimdir. Öğeleri eklemek, kaldırmak, kopyalamak ve numaralandırmak için temel işlevler sağlar. ICollection<T> hem genel IEnumerable<T> hem de genel olmayan IEnumerable öğesinden devralır.

  • Genel IList<T> arabirimi, dizine göre alma yöntemleriyle ICollection<T> genel arabirimi genişletir.

  • IDictionary<TKey,TValue> genel arabirim, anahtarlı alma yöntemlerine sahip olacak şekilde ICollection<T> genel arabirimi genişletir. .NET temel sınıf kitaplığındaki genel sözlük türleri de genel IDictionary olmayan arabirimi uygular.

  • Genel IEnumerable<T> arabirim genel bir numaralandırıcı yapısı sağlar. Genel IEnumerator<T> numaralandırıcılar tarafından uygulanan genel arabirim, genel olmayan IEnumerator arabirimi devralır; MoveNext tür parametresine bağlı olmayan Reset ve T üyeleri yalnızca genel olmayan arabirimde görünür. Bu, genel olmayan arabirimin herhangi bir tüketicisinin de genel arabirimi kullanabileceği anlamına gelir.

Matematiksel işlevsellik

.NET 7, ad alanında System.Numerics sayı benzeri türleri ve bunlara sağlanan işlevleri açıklayan genel arabirimler sunar. .NET temel sınıf kitaplığının sağladığı 20 sayısal tür, örneğin Int32 ve Doublebu arabirimleri uygulayacak şekilde güncelleştirildi. Bu arabirimlerin en göze çarpanı kabaca "gerçek" bir sayıya karşılık gelen 'dir INumber<TSelf>.

Bu arabirimler hakkında daha fazla bilgi için bkz. Genel matematik.

Ayrıca bakınız