script.js
$(()=>{
let cat =new Cat();
cat.bark('茶ひげ猫');
cat.meows('スカンピー猫');
cat.runAway('黒い');
cat.chase();
});
Cat.js
class Cat extends Animal{
constructor(){
$('#res').append('茶ひげ猫と');
super();
this.item = 'スリッパ';
}
meows(){
super.bark('大きな茶ひげ'); // スーパークラスのメソッドを呼び出す
}
// メソッドのオーバーライド
runAway(color_text){
super.runAway(color_text);
let text = `${color_text}子猫も一緒に逃げ出した。<br>`;
$('#res').append(text);
}
}
Animal.js
class Animal{
constructor(){
$('#res').append('黒猫<br>');
this.master = '飼い主';
this.item = 'チェンソー';
}
bark(name){
let text = `${name}が吠える<br>`;
$('#res').append(text);
}
runAway(color_text){
let text = `${color_text}親猫は逃げ出した。<br>`;
$('#res').append(text);
}
chase(){
let text = `${this.master}は${this.item}を持って茶ひげ猫を追いまわした。<br>`;
$('#res').append(text);
}
}