Sınıflarda Alan ve Özellik Kullanımı

Nesne tabanlı programlamada sınıflar soyut yapılardır. Yani başka bir yapı ile ilişkilendirilmedikleri sürece tek başlarına koddurlar.

Nesne tabanlı programlamada nesneyi oluşturan iki temel yapı vardır. Bunlardan birisi veri diğeri ise metottur.

Nesne tabanlı programda alan, sınıf içerisinde tanımlanan değişkenlerdir.

Alan kelimesi İngilizcede “fields” olarak geçmektedir.

Sınıfta tanımlanan değişkenin tipi (string, integer gibi) fark etmeksizin bütün değişkenler alandır.

Alanlara hem sınıf içerisinden hem de sınıf dışından erişim verebilmek mümkündür.

Alanlara sınıf içerisinden erişmek için “this” ifadesi kullanılmaktadır.

Sınıf içerisinden alanlara erişimde herhangi bir engel bulunmaktadır.

Sınıfın içerisindeki bütün metotlar bulundukları sınıfın bütün alanlarına (fields) erişebilirler.

Sınıfın içerisinde tanımlanan alanın adı ile metodun içerisinde tanımlanan değişkenin adı aynı olabilir.

Alanlara sınıf içerisinden erişilebildiği gibi değerleri de değiştirilebilmektedir. Sınıf içerisinde bulunan bir alanın değerini değiştirmek için tıpkı erişmek için kullanılan “this” ifadesi kullanılmaktadır.

Alanlara erişim sınıf içerisinden direk yapılmaktadır.

Ancak sınıf dışından alana erişim için biraz daha farklıdır. Çünkü önceden de belirtildiği gibi sınıflar başlı başına kod parçalarıdır çağrılmadıkça çalışmazlar.

Sınıfta bunulan alana erişmek için öncelikle o sınıf tanımlanmalıdır.

Alanlarda yalnızca okunabilir veriler oluşturmakta mümkündür.

Sınıfta bulunan bir alanı sadece okunabilir yapmak için alanın önüne “readonly” yazılması yeterlidir.

Sınıf içerisinde tanımlanan alan isimleri eşşiz olmak zorundadır. Alan isimleri eşsiz olmazsa program hata verip çalışmayacaktır.

Özellikler, alanların değerlerini okumak, yazmak veya hesaplamak için esnek bir mekanizma sağlayan sınıfların bir üyesidir.

Özellikler, alanlara erişmek ve bunlara değer atamak için erişimciler olarak da bilinen “get” ve “set” yapılarını kullanırlar.

Bir özelliğin get ve set bölümlerine veya bloklarına erişimciler denir.

Nesne tabanlı programlamada özellikler verilere yetkili ve kontrollü erişim için büyük önem taşımaktadır.

Özelliğe değer atanırken ayrı bir satırda yapılmak zorunda değildir. Sınıf tanımlanırken sınıfın özelliklerine değer atanabilir. Sınıf tanımlanırken özelliğe değer atamak için süslü parantezler “{}” içerisinde yapılmalıdır.

Salt okunur özellikler de oluşturulabilir.

Salt okunur, bir özelliğin değerine erişilebilen ancak ona bir değer atanamayan anlamına gelir.

Sadece yazılabilir bir özellikler de oluşturulabilir.

Sadece yazılabilir, bir özelliğe değer atanabilir ancak onun değerini alınamaz anlamına gelir.

Bir özelliğin “get” erişimcisi yoksa sadece yazılabilir bir özelliktir.

Özelliklere sadece değer atanmadan önce değil aynı zaman değer çağrılmadan öncede kontroller eklenebilmektedir.

Özellikler (properties) kullanılırken illa alanların (fields) beraberinde kullanılması zorunlu değildir.