5.00 / 1 oy

Java'da getter ve setter kullanımı örnekleri

Programlama dillerinde encapsulation (kapsülleme) amacıyla sınıflar içerisindeki alanlara doğrudan erişilmesi yerine getter ve doğrudan güncellenebilmesi yerine setter adı verilen metodlar kullanılır. Böylece istenmeyen erişimler ve güncellemelerin de önüne geçilmiş olur.

Kapsülleme işlemlerinde sınıflara ait değişkenler private olarak yazılırlar ve istenen getter/setter'lar da public olarak bu değişkenlere erişim ve güncelleme işlemlerini gerçekleştirirler.

Örnek olarak personel sınıfının isim değişkenini doğrudan erişime kapatalım ve getter ile setter metodlarını yazalım.

public class Personel {
  private String ad;

  // Getter
  public String getAd() {
    return ad;
  }

  // Setter
  public void setAd(String yeniAd) {
    this.ad = yeniAd;
  }
}

Bir personel nesnesi oluşturalım ve getter ile setter metodlarını kullanalım.

Personel kisi1 = new Personel();
kisi1.setAd("Mahmut"); // ad değişkeni "Mahmut" olarak atanmış oldu
System.out.println(kisi1.getAd()); //Mahmut çıktısı alındı

Not: Olması gerektiği gibi personel nesnesinin ad değişkenine doğrudan erişim artık mümkün değildir.

Personel kisi1 = new Person();
kisi1.ad = "Mahmut";  // hata
System.out.println(kisi1.ad); // hata

 

Editör editi: sitedeki bazı diğer benzer yazılar için;

bkz: Programlamada Encapsulation (Kapsülleme) Nedir?

bkz: Programlama Dillerinde Kalıtım Nedir?

bkz: Programlama dillerinde hata ayıklama (debugging) nasıl yapılır?

bkz: Programlama dillerinde diziler (array) ne işe yararlar?

bkz: Programlama dillerinde while (true) ifadesi ne işe yarar?

bkz: Programlama dillerinde if ile switch case arasındaki fark nedir?

utku33

04.09.2021 02:03

Bu soru henüz yanıtlanmamış.

Bu soruya sadece kayıtlı kullanıcılar yanıt yazabilirler. Yanıt yazmak için lütfen giriş yapınız.

Reitix
Java'da getter ve setter kullanımı örnekleri

İnternet sitemizdeki deneyiminizi iyileştirmek için çerezler kullanıyoruz. Bu siteye giriş yaparak çerez kullanımını kabul etmiş sayılıyorsunuz. Daha fazla bilgi.