Normal
Wobei das mit final Variabeln noch spannend ist:[code=Java]public class FinalTest { public static void main(String[] args) { B b = new B(); b.val = 4; // Funktioniert A ab = b; ab.val = 3; // Compilerfehler, obwohl dasselbe Objekt } static class A { public final int val = 0; } static class B extends A { public int val = 2; }}[/code]
Wobei das mit final Variabeln noch spannend ist:
[code=Java]
public class FinalTest {
public static void main(String[] args) {
B b = new B();
b.val = 4; // Funktioniert
A ab = b;
ab.val = 3; // Compilerfehler, obwohl dasselbe Objekt
}
static class A {
public final int val = 0;
static class B extends A {
public int val = 2;
[/code]