継承 (Inheritance) とは
既存のクラス(親クラス)の機能をベースにして、新しいクラス(子クラス)を作る仕組みです。共通機能を親にまとめ、子では差分(特有の機能)だけを記述します。
[!NOTE]
JavaScriptでは extends キーワードを使用して継承を表現します。
super キーワード
子クラスから親クラスの機能を呼び出すために使用します。
super(): 親クラスのコンストラクタを実行します。子クラスのコンストラクタ内でthisを使う前に必ず呼び出す必要があります。super.メソッド名(): 親クラスで定義されているメソッドを明示的に呼び出します。
オーバーライド (Method Overriding)
親クラスにあるメソッドと同じ名前のメソッドを子クラスで再定義することです。これにより、子クラス独自の振る舞いに「上書き」できます。
class Fan {
pressSwingButton() {
console.log("首振りを開始します");
}
}
// 継承
class PortableFan extends Fan {
// オーバーライド
pressSwingButton() {
console.log("このモデルには首振り機能はありません");
}
}