Skip to content

Instantly share code, notes, and snippets.

@adash333
Created September 22, 2019 11:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save adash333/8915d13a95fba0b0fecf5ad28806552b to your computer and use it in GitHub Desktop.
Save adash333/8915d13a95fba0b0fecf5ad28806552b to your computer and use it in GitHub Desktop.
// Animalクラスの定義
class Animal {
// コンストラクタの定義
constructor(name) {
this.name = name;
}
// speakメソッドの定義
speak() {
console.log(this.name + "「鳴き声」");
}
// sleepメソッドの定義
sleep() {
console.log(this.name + "「zzz」");
}
}
// Catクラスの定義
class Cat extends Animal {
// コンストラクタの定義
constructor(name) {
// 親クラスのコンストラクタを実行
super(name);
}
// speakメソッドを定義
speak() {
console.log(this.name + "「にゃーん」");
}
}
// もちろんAnimalやCatは今までと同様に使用可能
// Animalのインスタンスを作成
var myAnimal = new Animal("ポチ");
myAnimal.speak(); // "ポチ「鳴き声」"
myAnimal.sleep(); // "ポチ「zzz」"
// Catのインスタンスを作成
var myCat = new Cat("たま");
myCat.speak(); // "たま「にゃーん」"
myCat.sleep(); // "たま「zzz」"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment