1/* 2 * @test /nodynamiccopyright/ 3 * @bug 4526026 4 * @summary javac allows access to interface members inherited protected from Object 5 * @author gafter 6 * 7 * @compile/fail/ref=InterfaceObjectInheritance.out -XDrawDiagnostics InterfaceObjectInheritance.java 8 */ 9 10interface InterfaceObjectInheritance { 11 class Inner { 12 static void bar(InterfaceObjectInheritance i) { 13 try { 14 // An inner class has access to any protected members, but 15 // according to JLS 9.2, an interface has no protected members, 16 // so this reference to finalize should not compile. 17 i.finalize(); 18 } catch (Throwable t) { 19 } 20 } 21 } 22} 23