Thuta Learning
ရှာဖွေရန်
AdvancedProgrammingbeginner

Encapsulation

စိတ်လျှော့ပါ။ ဒီခန်းကို စာအုပ်လိုမဟုတ်ဘဲ စကားပြောသလိုပဲ၊ နားလည်လွယ်အောင် ရှင်းပါမယ်။

Encapsulation သည် data ကို private ထားပြီး public methods မှတဆင့်ထိန်းချုပ် access ပေးခြင်းပါ။ Data ကိုတန်းပြင်ခွင့်ပေးလိုက်ရင် invalid value တွေဝင်နိုင်ပါတယ်။ ဥပမာ age ကို -5 လို့ပေးလို့မရအောင် setter ထဲမှာစစ်နိုင်ပါတယ်။ Data ကို lock box ထဲထည့်ပြီး key ကို method အဖြစ်ပေးထားတာလိုပါပဲ။

java
class Person {
  private String name;
  private int age;

  public String getName() {
    return name;
  }

  public void setName(String newName) {
    name = newName;
  }

  public int getAge() {
    return age;
  }

  public void setAge(int newAge) {
    if (newAge >= 0) {
      age = newAge;
    }
  }
}

public class Main {
  public static void main(String[] args) {
    Person person = new Person();
    person.setName("Aung");
    person.setAge(25);

    System.out.println(person.getName());
    System.out.println(person.getAge());
  }
}

name နဲ့ age ကို private ထားလို့ class အပြင်ကနေတိုက်ရိုက်မပြင်နိုင်ပါ။ Getter methods က value ပြန်ပေးပြီး setter methods က value set လုပ်ပေးပါတယ်။ setAge ထဲမှာ negative value မဝင်အောင်စစ်ထားပါတယ်။

You should see
Aung 25

လက်တွေ့အသုံးချမှု

User account, bank balance, subscription status, wallet credits စတဲ့ sensitive data တွေကို encapsulation နဲ့ကာကွယ်သင့်ပါတယ်။

ဒီနေရာမှာ လူအများမှားတတ်တယ်

  • Private field ကို person.age = -5 လို့အပြင်ကနေပြင်လို့မရပါ။ Getter/setter ကတဆင့်သုံးရပါတယ်။
Encapsulation | Thuta Learning