.NET'te genel arabirimler

Bu makalede genel bir bakış sağlanır. NET'in genel tür aileleri arasında ortak işlevler sağlayan genel arabirimleri.

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.

Not

Ç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 Contravariance.

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 IEnumerableolmayan öğesinden devralır.

  • Genel arabirim, IList<T> genel arabirimi dizine alınan alma yöntemleriyle genişletir ICollection<T> .

  • Genel IDictionary<TKey,TValue> arabirim, anahtarlı alma yöntemleriyle genel arabirimi genişletir ICollection<T> . .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 IEnumerator olmayan arabirimi devralır; MoveNext tür parametresine Tbağımlı olmayan ve Reset üyeleri yalnızca üretilmeyen 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 bkz.