66 lines
955 B
TypeScript
66 lines
955 B
TypeScript
|
// Case 1
|
||
|
class Base1 {
|
||
|
public foo() {
|
||
|
return "base";
|
||
|
}
|
||
|
}
|
||
|
|
||
|
class Sub1 extends Base1 {
|
||
|
public bar() {
|
||
|
return "base";
|
||
|
}
|
||
|
}
|
||
|
|
||
|
class SubSub1 extends Sub1 {
|
||
|
public bar() {
|
||
|
return super.super.foo;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Case 2
|
||
|
class Base2 {
|
||
|
public foo() {
|
||
|
return "base";
|
||
|
}
|
||
|
}
|
||
|
|
||
|
class SubE2 extends Base2 {
|
||
|
public bar() {
|
||
|
return super.prototype.foo = null;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Case 3
|
||
|
class Base3 {
|
||
|
public foo() {
|
||
|
return "base";
|
||
|
}
|
||
|
}
|
||
|
|
||
|
class SubE3 extends Base3 {
|
||
|
public bar() {
|
||
|
return super.bar();
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Case 4
|
||
|
module Base4 {
|
||
|
class Sub4 {
|
||
|
public x(){
|
||
|
return "hello";
|
||
|
}
|
||
|
}
|
||
|
|
||
|
export class SubSub4 extends Sub4{
|
||
|
public x(){
|
||
|
return super.x();
|
||
|
}
|
||
|
}
|
||
|
|
||
|
export class Sub4E {
|
||
|
public x() {
|
||
|
return super.x();
|
||
|
}
|
||
|
}
|
||
|
}
|