Vipataji wa Accessors katika OOP katika JavaScript

Wacha tuchunguze kwa undani matumizi ya vipataji vya properties-accessors. Hebu tufanye kuwa tuna darasa lifuatalo na property ya faragha:

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

Wacha tufanye katika darasa hili property ya umma name, ambayo inaweza kusomwa, lakini haiwezi kuandikwa:

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

Wacha tuangalie utendaji. Tunda kitu cha darasa letu, tukikipitisha kigezo thamani ya jina:

javascriptlet user = new User('john');

Na sasa tusome jina kupitia property ya umma:

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

Lakini jaribio la kuandika jina litasababisha hitilafu, kama tulivyokusudia:

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

Tekeleza vipataji vya accessors kwa properties za darasa Employee.