1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
|
=== tests/cases/conformance/classes/propertyMemberDeclarations/accessorsOverrideProperty2.ts ===
class Base {
>Base : Base
x = 1;
>x : number
>1 : 1
}
class Derived extends Base {
>Derived : Derived
>Base : Base
get x() { return 2; } // should be an error
>x : number
>2 : 2
set x(value) { console.log(`x was set to ${value}`); }
>x : number
>value : number
>console.log(`x was set to ${value}`) : void
>console.log : (...data: any[]) => void
>console : Console
>log : (...data: any[]) => void
>`x was set to ${value}` : string
>value : number
}
const obj = new Derived(); // nothing printed
>obj : Derived
>new Derived() : Derived
>Derived : typeof Derived
console.log(obj.x); // number
>console.log(obj.x) : void
>console.log : (...data: any[]) => void
>console : Console
>log : (...data: any[]) => void
>obj.x : number
>obj : Derived
>x : number
|