Sobes.tech
Junior

Referans veri tipleri nedir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Referans tipleri, değeri değil, değerin depolandığı yerin (bellek adresi) referansını tutar. Bu verilere atama veya geçiş sırasında sadece referans kopyalanır, nesnenin tamamı değil. Bir referans aracılığıyla yapılan değişiklikler, aynı nesneye işaret eden diğer referanslar aracılığıyla erişildiğinde görülebilir.

Farklı dillerde referans tiplerine örnekler:

  • Java: Sınıflar (String, Object, özel sınıflar), arayüzler, diziler.
  • C#: Sınıflar (string, object, özel sınıflar), arayüzler, delegeler, diziler.
  • Python: Tüm veri tipleri (listeler, sözlükler, demetler, kümeler, sınıflar, fonksiyonlar).
# Python'da örnek
list1 = [1, 2, 3]
list2 = list1  # list2, aynı listeye referans eder

list2.append(4)

print(list1)  # Çıktı: [1, 2, 3, 4]
print(list2)  # Çıktı: [1, 2, 3, 4]

Değeri tutan tipler ise, değeri kendisi depolar ve atama/geçiş sırasında tüm değer kopyalanır.

Karşılaştırma örneği:

Özellik Değer Tipleri Referans Tipleri
Depolama Değer kendisi Değere referans
Atama/geçiş Değerin kopyası Referansın kopyası
Değişiklik Orijinali etkilemez Orijinal değişir
Örnek (C#) int, struct, enum class, interface, array