请参阅下面的TypeScript代码:
class x {
a = 20;
f1(){
console.log("parent > " + this.a);
}
}
class y extends x {
a = 10;
f1(x?:number){
console.log("chold > " + this.a);
super.f1();
}
}
let z = new y();
z.f1();
当我在Chrome中运行以下编译代码时,我得到child = 10且parent = 10.
从父类访问父类属性的正确方法是什么this
似乎不起作用。
答案 0 :(得分:2)
从父类访问父类属性的正确方法是什么
this
不能正常工作。
this
指向当前实例。 this.a
将指向父级和类中的相同值。基本上,a
被覆盖,当父访问this.a
时,它访问子属性。
super
访问父方法