OOP-də JavaScript-də Miras zamanı Private xassələr

Private xassələr miras alınmır. Lakin törəmə class onlarla valideynin public metodları vasitəsilə manipulyasiya edə bilər. Gəlin praktikada baxaq. Tutaq ki, bizim private xassəsi və onun getter və setteri olan aşağıdakı valideyn classımız var:

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

Tutaq ki, aşağıdakı törəmə class valideyndən miras alır:

javascriptclass Student extends User {
  
}

Gəlin törəmə classın obyektini yaradaq:

javascriptlet student = new Student;

Onun private xassəsini yazmaq üçün valideyn metodundan istifadə edək:

javascriptstudent.setName('john');

Onun private xassəsini oxumaq üçün valideyn metodundan istifadə edək:

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

Aşağıdakı valideyn class verilmişdir:

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

Bu valideyndən miras alacaq Employee classını edin.

Задание 2

Employee classının obyektini yaradın və miras qalan setter və getterləri çağırın.

Задание 3

Employee classında aşağıdakı metodu edin:

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

Əmin olun ki, metodun kodu xətaya səbəb olur.