/* | |
* @test /nodynamiccopyright/ | |
* @bug 4721069 | |
* @summary javac allows an interface to override a final method in Object | |
* @author gafter | |
* | |
* @compile/fail/ref=T4721069.out -XDrawDiagnostics T4721069.java | |
*/ | |
interface I { | |
Class getClass(); // error: cannot overide final from Object | |
static class T { | |
static void f(I i) { | |
if (i == null) { | |
Integer x = Integer.valueOf(2); | |
} else { | |
I x = i; | |
x.getClass(); | |
} | |
} | |
public static void main(String[] args) { | |
f(null); | |
} | |
} | |
} |