定义动物类
class Animal{
constructor(nickName,sex,age){
利用构造函数给动物的属性赋值
this.nickName = nickName
this.sex = sex
this.age = age
}
定义方法,并将方法添加到原型上
sayHi(){
console.log(`hi,我叫${this.nickName},今年${this.age}`);
}
eat(str){
console.log(`我喜欢吃${str}`);
}
sleep(time){
console.log(`我每天睡${time}小时`);
}
}
创建一个动物对象
let a1 = new Animal('佩奇','女生',6)
a1.sayHi()
a1.eat('蛋糕')
a1.sleep(12)
定义狗狗类
class关键字,定义类:extends关键字继承类
采用这种方式,Animal的方法,此刻已经全部继承过来了
class Dog extends Animal{
constructor(nickName,sx,age,type){
调用父类的构造函数,而且必须放在子类构造函数的最上
super(nickName,sex,age)
this.type = type
}
play(){
console.log(`我是一只${this.nickName}`);
}
}
let d1 = new Dog('旺财','男生',6,'拉布拉多')
d1.sayHi()
d1.eat('牛肉')
d1.sleep(8)
d1.play()