Курсы по Angular
Менторство: 200$ за курс. Репетиторство: 20$ за занятие. Жми для подробностей!
⊗jsOpIhPrP 35 of 60 menu
Бесплатный курс по работе с AJAX в PHP. Начало 6 ноября. Жми для записи!

Приватные свойства при наследовании в ООП в JavaScript

Приватные свойства не наследуются. Но потомок может манипулировать ими через публичные методы родителя. Давайте посмотрим на практике. Пусть у нас есть следующий класс-родитель с приватным свойством и его геттером и сеттом:

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

Пусть от родителя наследует следующий потомок:

class Student extends User { }

Создадим объект потомка:

let student = new Student;

Воспользуемся методом родителя, чтобы записать его приватное свойство:

student.setName('john');

Воспользуемся методом родителя, чтобы прочитать его приватное свойство:

let name = student.getName(); console.log(name);

Дан следующий класс-родитель:

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

Сделайте класс Employee, который будет наследовать от этого родителя.

Создайте объект класса Employee и вызовите унаследованные сеттеры и геттеры.

В классе Employee сделайте следующий метод:

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

Убедитесь, что код метода приведет к ошибке.

eskaitnlsw