Private egenskaper ved arv i OOP i JavaScript

Private egenskaper arves ikke. Men etterkommeren kan manipulere dem gjennom forelderens offentlige metoder. La oss se på det i praksis. La oss si at vi har følgende forelderklasse med en privat egenskap og dens getter og setter:

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

La oss si at følgende etterkommer arver fra forelderen:

javascriptclass Student extends User {
  
}

La oss opprette et etterkommerobjekt:

javascriptlet student = new Student;

La oss bruke forelderens metode for å skrive dens private egenskap:

javascriptstudent.setName('john');

La oss bruke forelderens metode for å lese dens private egenskap:

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

Følgende forelderklasse er gitt:

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

Lag klassen Employee, som skal arve fra denne forelderen.

Задание 2

Opprett et objekt av klassen Employee og kall de arvede setterne og getterne.

Задание 3

I klassen Employee, lag følgende metode:

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

Forsikre deg om at koden til metoden fører til en feil.