extends キーワード
CoddyのJavaScriptジャーニー「オブジェクト指向プログラミング」セクションの一部 — レッスン 26/56。
JavaScriptのextendsキーワードは、親クラスからプロパティやメソッドを継承する子クラスを作成するために使用されます。
まず、親クラスを作成しましょう:
class Animal {
constructor(name) {
this.name = name;
}
speak() {
return `${this.name} makes a noise.`;
}
}それでは、親クラスを継承した子クラスを作成してみましょう:
class Dog extends Animal {
// DogクラスはAnimalから継承します
}このシンプルなコードは、DogクラスがAnimalクラスからすべてのプロパティとメソッドを継承することを意味します。
Dogインスタンスを作成します:
const dog = new Dog('Rex');親から継承されたメソッドを呼び出す:
console.log(dog.speak()); // 出力: "Rex makes a noise."extendsキーワードは、子クラス(Dog)が親クラス(Animal)で定義されたすべての機能にアクセスして使用できる継承関係を作成します。
チャレンジ
extends キーワードを使用して、Person クラスを継承する Student クラスを作成し、それをエクスポートしてください。
チートシート
extendsキーワードは、親クラスからプロパティとメソッドを継承する子クラスを作成します:
class Animal {
constructor(name) {
this.name = name;
}
speak() {
return `${this.name} makes a noise.`;
}
}
class Dog extends Animal {
// DogはAnimalを継承します
}
const dog = new Dog('Rex');
console.log(dog.speak()); // 出力: "Rex makes a noise."子クラスは、親クラスのすべてのプロパティとメソッドにアクセスできます。
自分で試してみよう
import { Student } from './classes.js';
// テストコード - 変更しないでください
const student = new Student("Emma");
console.log(student.greet()); // "Hello, I'm Emma" と出力されるはずですこのレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。