JavaScript-da OOP-da Privat Xususiyatlar

Obektdan tashqaridan o'qish va yozish mumkin bo'lgan xususiyatlar public (ommaviy) deb ataladi. Shuningdek, private (shaxsiy) xususiyatlar mavjud bo'lib, ular faqat klass ichida ishlatilishi mumkin.

Privat xususiyatlar nomi # belgisidan boshlanishi kerak. Bundan tashqari, bunday xususiyatlar klass kodining boshida e'lon qilinishi shart. Keling, buni amalga oshiramiz:

javascriptclass User {
  #name;
}

Endi xususiyatga ma'lumot yozamiz. Buni, masalan, klass konstruktorida bajarish mumkin:

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

Keling, endi xususiyatimizning qiymatini qaytaradigan metod yaratamiz:

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

Klass obektini yaratamiz, unga foydalanuvchi ismini parametr sifatida berib:

javascriptlet user = new User('john');

Xususiyatimizga to'g'ridan-to'g'ri klass tashqarisida murojaat qilishga urinish xatolikka olib keladi:

javascriptconsole.log(user.#name); // xato

Metodimizni chaqirish esa ushbu xususiyatni o'qish imkonini beradi:

javascriptconsole.log(user.show()); // 'john' chiqadi
Задание 1

Employee klassida uchta privat xususiyat yarating: ism, maosh va yosh.

Задание 2

Ushbu xususiyatlarning qiymatlarini konstruktorga parametr sifatida o'tkazing.

Задание 3

Xodim ma'lumotlarini chiqaradigan metod yarating.