//.类中的继承
//语法: 子类 exteds 父类{}
//子类继承父类时候属性相关注意事项:
class Father {
//设置属性
constructor(uname, uage) {
this.uname = uname;
this.uage = uage;
}
}
//Son 类继承Father类
class Son extends Father {
//单独给子类设置一个分数属性
constructor(uname, uage, score) {
super(uname, uage, score);
this.score = score
}
}
let zs = new Son('张三', 20, 100);
console.log(zs);
//总结:
//1.子类在继承父类过程中.子类中没有设置constructor,那么子类完全可以使用父类中属性
//2.子类中如果设置了自己的构造函数,语法默认报错
//3.如何解决super语法报错,在子类构造函数内this关键字之前加super()
//4.super()用来调用父类属性函数的
//类中的方法继承
class Father {
eat() {
console.log('吃饭......');
}
}
class Son extends Father {
eat() {
//使用与父类与子类同名的方法
super.eat();
// console.log('儿子方法....');
}
}
let zs = new Son();
zs.eat();
//1.类中方法继承
//a)子类只要通过extends继承父类,就可以使用父类方法
//b)如果子类中存在与父类相同的方法,那么按照原型链方法的查找规则,执行的是子类中的方法
//c)如果希望在子类中执行父类中的同名方法,可以用super调用