1.class继承的实现
2.super关键字
3.方法的重写
<script>
//es5
function Animal(name,colr){
this.name = name;
this.color = color;
}
Animal.prototype.eat = function(){
console.log(this.name ="is eating" );
}
Animal.prototype.sleep = function(){
console.log(this.name = "is sleeping");
}
//es6:更简洁、直观
class Animal{
constructor(name,color){
this.color = color;
}
eat(){
console.log(this.name+"is eating");
}
sleep(){
console.log(this.name+"is sleep");
}
}
class Rabbit extends Animal{
constructor(name,color,age){
//子类中通过super调用父类的构造函数,一定要放在第一行
// super访问父类的方法
super(name,color);
this.age = age;
}
//子类通过定义同名的方法覆盖父类中的方法,当子类对象调用的时候,优先执行子类自己拥有的方法
eat(){
console.log("露出了常常的牙齿")
}
test(){
//通过super关键字,调用父类对象中的方法
super.eat();
}
}
let rab = new Rabbit("兔八哥","白色",10);
rab.eat();
rab.sleep();
rab.tast();
console.log(rab);
</script>
《待更新》
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。