JavaScript OOP'de Kalıtımda Private Özellikler

Private özellikler kalıtımla aktarılmaz. Ancak alt sınıf, üst sınıfın public metodları aracılığıyla onları manipüle edebilir. Pratikte nasıl olduğuna bakalım. Private bir özelliğe, onun getter'ına ve setter'ına sahip olan şu üst sınıfımız olduğunu varsayalım:

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

Üst sınıftan şu alt sınıfın türediğini varsayalım:

javascriptclass Student extends User {
  
}

Alt sınıfın bir nesnesini oluşturalım:

javascriptlet student = new Student;

Üst sınıfın private özelliğini yazmak için onun metodunu kullanalım:

javascriptstudent.setName('john');

Üst sınıfın private özelliğini okumak için onun metodunu kullanalım:

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

Şu üst sınıf verilmiştir:

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

Bu üst sınıftan kalıtım alan Employee sınıfını yapın.

Задание 2

Employee sınıfının bir nesnesini oluşturun ve kalıtımla alınan setter ve getter'ları çağırın.

Задание 3

Employee sınıfında şu metodu yapın:

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

Metodun kodunun bir hata vereceğinden emin olun.