Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
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ı
System ad alanında, System.IComparable<T> ve System.IEquatable<T> genel arabirimleri, üretsel olmayan muadilleri gibi, sırasıyla sıralama karşılaştırmaları ve eşitlik karşılaştırmaları için yöntemleri tanımlar. Türler, bu tür karşılaştırmalar gerçekleştirme olanağı sağlamak için bu arabirimleri uygular.
System.Collections.Generic ad alanında, IComparer<T> ve IEqualityComparer<T> genel arabirimleri, System.IComparable<T> veya System.IEquatable<T> arabirimini uygulamayan türler için bir sıralama veya eşitlik karşılaştırması tanımlamanın bir yolunu sunar. Ayrıca, bunu yapan türler için bu ilişkileri yeniden tanımlamak için bir yol sağlar.
Bu arabirimler, genel koleksiyon sınıflarının birçoğunun yöntemleri ve oluşturucuları tarafından kullanılır. Örneğin, IComparer<T> uygulanmayan bir tür için sıralama düzeni belirtmek üzere, SortedDictionary<TKey,TValue> sınıfının oluşturucusuna genel bir System.IComparable<T> nesnesi geçirebilirsiniz. Genel Array.Sort uygulamalar kullanılarak dizileri ve listeleri sıralamak için List<T>.Sort genel statik yöntemin ve IComparer<T> nesne yönteminin aşırı yüklemeleri vardır.
Comparer<T> ve EqualityComparer<T> genel sınıfları, IComparer<T> ve IEqualityComparer<T> genel arabirimlerinin uygulamaları için temel sınıflar sağlar ve ayrıca kendi Comparer<T>.Default ve EqualityComparer<T>.Default özellikleri aracılığıyla varsayılan sıralama ile eşitlik karşılaştırmaları sağlar.
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.