JavaScriptのOOPにおける継承時のプライベートプロパティ
プライベートプロパティは継承されません。 しかし、子クラスは親クラスのパブリックメソッドを通じて それらを操作することができます。 実際の例を見てみましょう。 以下のように、プライベートプロパティとそのゲッター、 セッターを持つ親クラスがあるとします:
javascriptclass User {
#name;
setName(name) {
this.#name = name;
}
getName() {
return this.#name;
}
}
この親クラスを継承する子クラスを 次のように作成します:
javascriptclass Student extends User {
}
子クラスのオブジェクトを作成します:
javascriptlet student = new Student;
親クラスのメソッドを利用して、 そのプライベートプロパティに値を設定します:
javascriptstudent.setName('john');
親クラスのメソッドを利用して、 そのプライベートプロパティの値を読み取ります:
javascriptlet name = student.getName();
console.log(name);
Задание 1
以下の親クラスがあるとします:
javascriptclass User {
#name;
#surn;
setName(name) {
this.#name = name;
}
getName() {
return this.#name;
}
setSurn(surn) {
this.#surn = surn;
}
getSurn() {
return this.#surn;
}
}
この親クラスを継承する
Employeeクラスを作成してください。
Задание 2
Employeeクラスのオブジェクトを作成し、
継承されたセッターとゲッターを呼び出してください。
Задание 3
Employeeクラスに
次のメソッドを追加してください:
javascriptgetFull() {
return this.#name + ' ' + this.#surn;
}
このメソッドのコードがエラーを引き起こすことを 確認してください。