Getterek és accessorok az OOP-ban JavaScriptben

Nézzük meg részletesebben a getter accessor tulajdonságok alkalmazását. Tegyük fel, hogy van egy osztályunk privát tulajdonsággal:

javascriptclass User {
  #name;
  
  constructor(name) {
    this.#name = name;
  }
}

Készítsünk ebben az osztályban egy name publikus tulajdonságot, amely olvasható, de nem írható:

javascriptclass User {
  #name;
  
  constructor(name) {
    this.#name = name;
  }
  
  get name() {
    return this.#name;
  }
}

Ellenőrizzük a működést. Hozzunk létre egy objektumot osztályunkból, átadva neki paraméterként a név értékét:

javascriptlet user = new User('john');

És most olvassuk ki a nevet a publikus tulajdonságon keresztül:

javascriptlet name = user.name;
console.log(name);

A név megváltoztatásának kísérlete viszont hibához vezet, ahogy azt el is vártuk:

javascriptuser.name = 'eric';
Задание 1

Valósítsa meg az accessor gettereket a Employee osztály tulajdonságaihoz.