C#

C# Referans Değişkenlerinde Atama

Sınıf ve nesne yapımızı anlattık. Şimdi oluşturduğumuz nesneleri taşıyan daha doğrusu temsil eden referans değişkenlerinden bahsedelim. Referans değişkenleri nesnelerimizin kendisini değil bulunduğu noktayı taşır demiştik. Bu yüzden de normal değişkenler(değer tipi) gibi işlem göremezler. Referans değişkenleri atamada, değer tipi değişkenleri gibi davranmaz. Değer tipi değişkenler de, atama yapılırken sağdaki değişkenin değeri soldakine kopyalanır. Ancak referans değişkenlerinde soldaki değişken sağdaki değişkenin işaret ettiği nesneyi işaret etmesine neden olur. Yani referansı kopyalamış oluruz. Bu durum ilk bakışta fark yokmuş gibi gözükse de aslında önemli bir farktır. Bir örnekle açıklayalım;

otomobil referans değişkeni oluşturup, motor referans değişkenine atadık. Bu durumda otomobil değişkeninin işaret ettiği nesneyi artık motor değişkeni de işaret ediyor. Bu durum, şu anlama geliyor; artık iki değişkende aynı nesneyi etkiliyor. Yani iki değişkende aynı nesne üzerinden işlem yapabilirler. Bu iki değişken aynı nesneyi işaret etse de değişkenlerden birine yeni bir değişken ataması yapıldığında, sadece atama yapılan değişken etkilenir. Ve artık yeni nesneyi işaret etmeye başlar. Mesela;

motor, tir değişkeninin işaret ettiği nesne ile ilişkilendirilmiştir. Bu durumdan otomobil değişkeni etkilenmez. Şimdi tüm bu işlemleri tek bir örnekte görelim.

İstanbul’un amatör seyyahı. Kod yazmak hayat felsefesi. Android, Java, C# ve Javascript’le yakından, tüm teknoloji dünyasıyla uzaktan ilgileniyor. Drone meraklısı ama sahibi değil.