Java学習のfinalキーワード
3236 ワード
public final int a = rand.nextInt(20);
class WithFinals {
private final void f() {
System.out.println("WithFinals.f()");
}
private void g() {
System.out.println("WithFinals.g()");
}
}
class OverridingPrivate extends WithFinals {
private final void f() {
System.out.println("OverringPrivate.f()");
}
private void g() {
System.out.println("OverrringPrivate.g()");
}
}
class OverridingPrivate2 extends OverridingPrivate {
public final void f() {
System.out.println("OverringPrivate2.f()");
}
public void g() {
System.out.println("OverringPrivate2.g()");
}
}
public class FinalOverridingIllusion {
public static void main(String[] args) {
OverridingPrivate2 op2 = new OverridingPrivate2();
op2.f();
op2.g();
OverridingPrivate op = op2;
WithFinals wf = op2;
}
}