class Zhuangshi {
constructor(drink) {
this.drink = drink
}
cost(){
return this.drink.cost()
}
des(){
return this.drink.des()
}
}
soya = {
cost: function () {
return 10
},
des: function () {
return '纯豆浆'
},
}
let zs = new Zhuangshi(soya)
console.log(zs.cost());
class SugarZhuangshi extends Zhuangshi{
constructor(drink){
super(drink)
}
cost(){
return super.cost()+1 // super和this.drink 同样的效果
}
des(){
return super.des()+'糖'
}
}
let szs = new SugarZhuangshi(zs)
console.log(szs.cost());
class EggZhuangshi extends Zhuangshi{
constructor(drink){
super(drink)
}
cost(){
return this.drink.cost()+2 // super和this.drink 同样的效果
}
des(){
return this.drink.des()+'蛋'
}
}
let ezs = new EggZhuangshi(szs)
console.log(ezs.des());
console.log(ezs.cost());
语法糖继承,(super和this.属性)
最新推荐文章于 2024-08-09 21:30:00 发布