public interface Test1Impl { void say(); } public class Test2Impl { public void say(){ }; } public class Test3Impl extends Test2Impl implements Test1Impl{ //这边居然可以不实现了(不会报错).... }
难道....父类默认实现了 Test1Impl 么
// instanceof 针对实例 // isAssignableFrom针对class对象 //Class1.isAssignableFrom(Class2) //isAssignableFrom 是用来判断一个类Class1和另一个类Class2是否相同或是另一个类的超类或接口。 public static void main(String[] args) { System.out.println(Test1Impl.class.isAssignableFrom(Test2Impl.class));//false //Test1Impl.class 不是Test2Impl.class的超类或者接口 System.out.println(Test2Impl.class.isAssignableFrom(Test1Impl.class));//也是false } 神奇,这是什么原因呢