Private metoder ved arv i OOP i JavaScript

Private metoder arves ikke. Dette er gjort med vilje for ikke å bryte inkapsling. La oss se på et eksempel. La oss si at vi har følgende foreldre- 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);
  }
}

La oss si at følgende klasse arver fra foreldreklassen:

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

La oss si at avkommet ønsker å bruke forelderens private metode. JavaScript tillater ikke dette og vil gi en feil:

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

Prøv i klassen Employee å bruke forelderens private metode.