Sobes.tech
Junior

C# dilinde jenerik türler nedir?

sobes.tech yapay zeka

AI'dan gelen yanıt

C# dilinde jenerik tipler, tür parametreleri ile sınıflar, yapılar, arayüzler, delege ve metodlar tanımlamaya olanak tanır. Bu, kodun yeniden kullanılabilirliğini ve tür güvenliğini artırır.

Ana avantajlar:

  • Kodun yeniden kullanımı: Tek bir sınıf veya metod, mantığı tekrar etmeden farklı veri türleriyle çalışabilir.
  • Tür güvenliği: Derleyici, derleme sırasında türleri kontrol eder ve tür uyuşmazlıklarına bağlı çalışma zamanı hatalarını önler.
  • Performans: Değer tipleri (struct) için boxing yapılmaz, bu da object kullanımına kıyasla performansı artırır.

Çalışma prensipleri:

  • Tür parametreleri: <T> köşeli parantezler kullanılarak tanımlanır, burada T tür parametresinin adıdır. Herhangi bir isim kullanılabilir, ancak T yaygındır.
  • Örnek oluşturma: Bir jenerik tipin örneği oluşturulurken, her tür parametresi için belirli bir veri tipi belirtilmelidir.
  • Kısıtlamalar (Constraints): Tür parametreleri üzerinde kısıtlamalar getirilebilir, örneğin, arayüz uygulaması, temel sınıf, yapıcı olmaması gibi.

List<T> jenerik sınıfının kullanım örneği:

// Tamsayı listesi oluşturma
List<int> numbers = new List<int>();
numbers.Add(1);
numbers.Add(2);

// Dize listesi oluşturma
List<string> names = new List<string>();
names.Add("Alice");
names.Add("Bob");