JavaScript-da OOP-da Meros Olishda Privat Xususiyatlar

Privat xususiyatlar meros qilib olinmaydi. Ammo voris ular bilan ota-onaning ochiq metodlari orqali manipulyatsiya qilishi mumkin. Keling, amalda ko'rib chiqaylik. Faraz qilaylik, bizda quyidagi ota-ona sinfi privyat xususiyat va uning getter va setter bilan mavjud:

javascriptclass User {
  #name;
  
  setName(name) {
    this.#name = name;
  }
  getName() {
    return this.#name;
  }
}

Faraz qilaylik, ota-onadan quyidagi voris meros oladi:

javascriptclass Student extends User {
  
}

Voris obyektini yaratamiz:

javascriptlet student = new Student;

Uning privat xususiyatini yozish uchun ota-ona metodidan foydalanamiz:

javascriptstudent.setName('john');

Uning privat xususiyatini o'qish uchun ota-ona metodidan foydalanamiz:

javascriptlet name = student.getName();
console.log(name);
Задание 1

Quyidagi ota-ona sinfi berilgan:

javascriptclass User {
  #name;
  #surn;
  
  setName(name) {
    this.#name = name;
  }
  getName() {
    return this.#name;
  }
  
  setSurn(surn) {
    this.#surn = surn;
  }
  getSurn() {
    return this.#surn;
  }
}

Employee sinfini yarating, u bu ota-onadan meros oladi.

Задание 2

Employee sinfining obyektini yarating va meros qilib olingan setter va getterlarni chaqiring.

Задание 3

Employee sinfida quyidagi metodni qiling:

javascriptgetFull() {
  return this.#name + ' ' + this.#surn;
}

Metod kodining xatolikka olib kelishiga ishonch hosil qiling.