C++ Kapsülleme


kapsülleme

Kapsüllemenin anlamı, "hassas" verilerin kullanıcılardan gizlendiğinden emin olmaktır. Bunu başarmak için, sınıf değişkenlerini/özniteliklerini private(sınıf dışından erişilemez) olarak bildirmelisiniz. Başkalarının özel bir üyenin değerini okumasını veya değiştirmesini istiyorsanız, genel alma ve ayarlama yöntemlerini sağlayabilirsiniz.


Gizli Üyelere Erişin

Özel bir özniteliğe erişmek için genel "get" ve "set" yöntemlerini kullanın:

Örnek

#include <iostream>
using namespace std;

class Employee {
  private:
    // Private attribute
    int salary;

  public:
    // Setter
    void setSalary(int s) {
      salary = s;
    }
    // Getter
    int getSalary() {
      return salary;
    }
};

int main() {
  Employee myObj;
  myObj.setSalary(50000);
  cout << myObj.getSalary();
  return 0;
}

Örnek açıklama

Kısıtlı erişime sahip olan özniteliktir salary.private

Genel setSalary()yöntem bir parametre ( s) alır ve onu salaryözniteliğe (maaş = s) atar.

Public yöntemi, private niteliğinin getSalary()değerini döndürür .salary

İçeride main(), Employeesınıfın bir nesnesini oluşturuyoruz. Şimdi setSalary()private niteliğinin değerini olarak ayarlamak için yöntemi kullanabiliriz 50000. Sonra getSalary()değeri döndürmek için nesne üzerindeki yöntemi çağırırız.


Neden Kapsülleme?

  • Sınıf niteliklerinizi özel (olabildiğince sık) olarak belirtmek iyi bir uygulama olarak kabul edilir. Kapsülleme, verilerinizin daha iyi kontrol edilmesini sağlar, çünkü siz (veya diğerleri) kodun bir bölümünü diğer bölümleri etkilemeden değiştirebilirsiniz.
  • Artan veri güvenliği