■クラス定義
// ES6以降の書き方
class Person {
// コンストラクタ
constructor(name, age) {
this.name = name;
this.age = age;
}
// メソッドの定義
hello() {
console.log('こんにちは');
}
}
// インスタンス化
// JSではオブジェクトとなることに注意
const me = new Person('Mike', 23);
■クラス継承
→上で定義したPersonクラスを継承して、newManクラスを作成する
class newMan extends Person {
constructor(name, age, gender) {
// superによりPersonのクラスを継承する
// 親のメソッドを先に初期化しないとエラーになる
super(name, age);
this.gender = gender;
}
hello() {
console.log('こんにちは');
}
// newManクラス特有のメソッドを定義する
bye() {
console.log('さようなら');
}
}