Privatne metode pri nasleđivanju u OOP u JavaScriptu

Privatne metode se ne nasleđuju. To je urađeno namerno, kako se ne bi narušila enkapsulacija. Hajde da pogledamo na primeru. Neka imamo sledeći roditeljski klas sa privatnom metodom:

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

Neka od roditeljskog klasa nasleđuje sledeći klas:

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

Neka potomak želi da iskoristi privatnu metodu roditelja. JavaScript to neće dozvoliti i prikazaće grešku:

javascriptclass Student extends User {
  setSurn(surn) {
    this.surn = surn;
  }
  getSurn() {
    return this.#capeFirst(this.surn); // biće greška
  }
}
Задание 1

Pokušajte u klasi Employee da iskoristite privatnu metodu roditelja.