Private metoder ved arv i OOP i JavaScript

Private metoder arves ikke. Dette er gjort med vilje for ikke at overtræde inkapsling. Lad os se på et eksempel. Lad os sige, at vi har følgende forældre klasse med en privat metode:

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

Lad os sige, at følgende klasse arver fra forældreklassen:

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

Lad os sige, at afkommet ønsker at bruge forælderens private metode. JavaScript tillader dette ikke og vil give en fejl:

javascriptclass Student extends User {
  setSurn(surn) {
    this.surn = surn;
  }
  getSurn() {
    return this.#capeFirst(this.surn); // vil give fejl
  }
}
Задание 1

Prøv i klassen Employee at bruge forælderens private metode.