Merhaba Java Dersleri devam ediyor. Bugün Java Kapsülleme Nedir, Nasıl Kullanılır? Java’da Getter Setter yazmayı göreceğiz. Nesne Tabanlı Programlamanın önemli konularından biri olan bu konuya detaylıca değinelim, öncelikle Encapsulation Nedir? Bundan bahsedip örnekler yapalım.
İçindekiler
Java Kapsülleme (Encapsulation) Nedir?
Sıklıkla kullanılan bu yapı herhangi bir Java Sınıfının kendi iç yapısını gizleyerek (private) sadece metotlar ile erişime izin vermesidir. Kısaca şudur Sınıfın private olan değişkenlerine dışarıdan erişemeyiz bu nedenle get (almak,okumak) – set (değer vermek, yazmak) metotları yazıp ilgili değişken üzerinde işlem yapabiliriz.
Getter ve Setter Metotları Nedir?
Sınıf içerisinde yer alan özellikleri (değişkenleri) private yaptıktan sonra Sınıftan bir nesne oluşturup değişkenlere direkt olarak erişmeye çalıştığınız zaman hata alırsınız. İşte tamda bu noktada getter ve setter metotlar devreye girer. Herhangi bir değişken için public get-set metotlar yazarak ilgili değişken üzerinde işlem yapabiliriz. Bunu yapmamızın nedeni Sınıf üzerinde kısıtlı erişim sağlamaktır.
Örneğin 0’dan düşük değer girilmesini istemediğiniz bir değişkeninize private ile niteleyip setter metodu içerisinde değer 0’dan küçükse eklenmesin veya hata versin şeklinde işlemler yaptırabilirsiniz.
Java Kapsülleme (Encapsulation) Nasıl Yapılır?
Öncelikle sınıf içerisinde yer alan değişkeni private olarak niteleriz. Daha sonra değer verme (setter) ve değer alma (getter) metotları yazılır. Bunlar public tipte olur aldıkları veya döndürdükleri değer değişkenin tipinde olur. Metotların adı get veya set sonrası değişkenin adının girilmesi ile belirlenir. Aşağıdaki örnek daha açıklayıcı olacaktır.
Java Otomatik Getter Setter Yazdırmak
Yukarıdaki gibi sürekli olarak getter ve setter yazmak. Hele ki bol özellikli sınıflarda bunu yapmak tam bir işkenceye dönüşecektir. Basitçe Kapsülleme (Encapsulation) yapabilmek için. IDE’nin bizlere sunduğu özellikten faydalanırız.
Ben NetBeans için anlatacağım diğer IDE’lerde de az çok benzerdir. Öncelikle Sınıfımızı oluşturup private olarak özelliklerimizi (değişkenleri) yazıyoruz. Daha sonra Sınıf içerisinde sağ tıklayıp Insert Code -> Getter and Setter basıp değişkenleri seçiyoruz ve Generate basıyoruz.
Kontrollü Getter-Setter Yazmak
Yukarıdaki örnekte değer ataması sırasında renk ve tekerler için kontrol sağladık. Bu sayede hata oluşturabilecek girişlerin önüne geçebilir. Kontrollü çalışan düzgün bir Sınıf ortaya çıkarabiliriz. Bugünkü Java Dersimiz bu kadardı. Umarım kapsüllemenin mantığını anlamışsınızdır. Sonraki dersimizde görüşmek üzere.