AJAX与 ES6应用 设计一个动物类的基类,包括属性:种类、颜色、年龄,方法:吃食、运动;再设计一个猫类,继承自动物类基类,增加属性:名字、特征,方法:捉老鼠、睡觉。 要求: (1)使用类(class关键字)的方式实现上述功能。 (2)给每个类添加至少3个不同的实例化对象,并调用各自的方法和属性。
时间: 2024-03-20 12:41:51 浏览: 128
下面是使用 ES6 类实现动物类和猫类的代码:
```javascript
class Animal {
constructor(type, color, age) {
this.type = type;
this.color = color;
this.age = age;
}
eat() {
console.log('Animal is eating food');
}
move() {
console.log('Animal is moving');
}
}
class Cat extends Animal {
constructor(type, color, age, name, feature) {
super(type, color, age);
this.name = name;
this.feature = feature;
}
catchMouse() {
console.log('Cat is catching mouse');
}
sleep() {
console.log('Cat is sleeping');
}
}
```
我们分别创建 Animal 和 Cat 的实例,并调用它们的方法和属性:
```javascript
const dog = new Animal('dog', 'brown', 3);
dog.eat(); // 输出 "Animal is eating food"
console.log(dog.type); // 输出 "dog"
const cat1 = new Cat('cat', 'white', 1, 'Tom', 'cute');
cat1.move(); // 输出 "Animal is moving"
console.log(cat1.feature); // 输出 "cute"
const cat2 = new Cat('cat', 'black', 2, 'Jerry', 'playful');
cat2.catchMouse(); // 输出 "Cat is catching mouse"
console.log(cat2.age); // 输出 2
const cat3 = new Cat('cat', 'orange', 4, 'Garfield', 'hungry');
cat3.sleep(); // 输出 "Cat is sleeping"
console.log(cat3.color); // 输出 "orange"
```
上面的代码中,我们首先创建了一个 Animal 类的实例 dog,然后调用了它的 eat 方法和 type 属性。接着,我们创建了三个 Cat 类的实例 cat1、cat2、cat3,并分别调用它们的方法和属性。可以看到,Cat 类可以继承 Animal 类的属性和方法,并且可以添加自己的属性和方法。
阅读全文