class C { int x = 2; int p () { return this.x + 3; } } C x = new C() ; int y = x.p ();
class E extends C { int p () { return this.x + 4; } } C x = // statischer Typ: C new E() ; // dynamischer Typ: E int y = x.p ();