JavaScript OOP အတွင်း အမွေဆက်ခံရာတွင် Private Methods များ

Private methods များကို အမွေဆက်ခံ၍မရပါ။ ၎င်းကို encapsulation ကို မထိခိုက်စေရန် အထူးပြုလုပ်ထားခြင်းဖြစ်သည်။ ဥပမာတစ်ခုဖြင့် ကြည့်ကြပါစို့။ ကျွန်ုပ်တို့တွင် private method ပါသော မိဘ class အောက်ပါအတိုင်းရှိသည်ဆိုပါစို့။

javascriptclass User {
  setName(name) {
    this.name = name;
  }
  getName() {
    return this.#capeFirst(this.name);
  }
  
  #capeFirst(str) {
    return str[0].toUpperCase() + str.slice(1);
  }
}

မိဘ class မှ အောက်ပါ class က အမွေဆက်ခံသည်ဆိုပါစို့။

javascriptclass Student extends User {
  setSurn(surn) {
    this.surn = surn;
  }
  getSurn() {
    return this.surn;
  }
}

သားသမီး class က မိဘ၏ private method ကို အသုံးပြုလိုပါက၊ JavaScript က ခွင့်မပြုပဲ error တက်စေမည်ဖြစ်သည်။

javascriptclass Student extends User {
  setSurn(surn) {
    this.surn = surn;
  }
  getSurn() {
    return this.#capeFirst(this.surn); // error တက်မည်
  }
}
Задание 1

Employee class ထဲတွင် မိဘ၏ private method ကို အသုံးပြုကြည့်ပါ။