36 lines
1.2 KiB
Plaintext
36 lines
1.2 KiB
Plaintext
==== tests/cases/compiler/interfaceExtendsClassWithPrivate2.ts (4 errors) ====
|
|
class C {
|
|
public foo(x: any) { return x; }
|
|
private x = 1;
|
|
}
|
|
|
|
interface I extends C {
|
|
other(x: any): any;
|
|
}
|
|
|
|
class D extends C implements I { // error
|
|
~
|
|
!!! error TS2416: Class 'D' incorrectly extends base class 'C':
|
|
!!! error TS2416: Private property 'x' cannot be reimplemented.
|
|
~
|
|
!!! error TS2421: Class 'D' incorrectly implements interface 'I':
|
|
!!! error TS2421: Private property 'x' cannot be reimplemented.
|
|
public foo(x: any) { return x; }
|
|
private x = 2;
|
|
private y = 3;
|
|
other(x: any) { return x; }
|
|
bar() {}
|
|
}
|
|
|
|
class D2 extends C implements I { // error
|
|
~~
|
|
!!! error TS2416: Class 'D2' incorrectly extends base class 'C':
|
|
!!! error TS2416: Private property 'x' cannot be reimplemented.
|
|
~~
|
|
!!! error TS2421: Class 'D2' incorrectly implements interface 'I':
|
|
!!! error TS2421: Private property 'x' cannot be reimplemented.
|
|
public foo(x: any) { return x; }
|
|
private x = "";
|
|
other(x: any) { return x; }
|
|
bar() { }
|
|
} |