0 oy
46 gösterim
Yazılımda encapsulation ne anlama gelir? Bize ne gibi avantaj sağlar?
Genel Kavramlar kategorisinde (1.8k puan) | 46 gösterim

1 cevap

0 oy
Sana ait olduğunu düşündüğün alanları dışarıdan kimsenin erişmesini ve/veya erişim yetkisini sınırlandırmak denilebilir. Normalde bir değişkenin varsa ve bunu public olarak belirtirsen isteyen onu değiştirebilir, karşılığını null yaparak çöp şekline dönüştürebilir. Ama o değişkenini private olarak ayarlarsan ve erişimi bir setter metod üzerinden yaparsan, değiştirmeyi, silmeyi engelleyebilirsin.

Örnek:

class XX {
    public int x;
}

public XX {
    private int x;
    public void setX(int i) {
      if (i > 0 && i < 10)
         x = i;
  }
    public int getX() { return x;}
}

Buradaki örnekde eğer x değişkenin public ise isteyen o değişkenin değerini istediği şekle çekebilir ve değiştiremezsin. Ama setter yazdığımız örnekde değeri 0-10 arasında değilse görmezden gel diyebilirsin. Sana böyle bir güzellik kazandırabilir. Ama ben bu şekilde kullanana pek rastlamadım :)
(3.7k puan)

İlgili sorular

0 oy
1 cevap
2 gün önce Genel Kavramlar kategorisinde tolgacelik.art (1.8k puan) sordu | 7 gösterim
0 oy
1 cevap
0 oy
0 cevap
0 oy
0 cevap
30 Kasım 2018 Genel Kavramlar kategorisinde kenan (3.7k puan) sordu | 17 gösterim
0 oy
0 cevap
30 Kasım 2018 Genel Kavramlar kategorisinde kenan (3.7k puan) sordu | 16 gösterim
Birbirinden değerli Türkçe Blog yazarlarını takip edebilmek için ziyaret edebileceğiniz bir internet sitesi. yazarlar.hasscript.com