我是 Java 新手,我了解继承的基本基本概念。我有一个关于通过超类引用的问题。由于从超类继承或使用接口实现的类的方法可以通过超类引用(接口或类)来引用。当扩展和实现都涉及一个类时,它将如何工作?
class A {
void test() {
System.out.println("One");
}
}
interface J {
void first();
}
// This class object can referenced using A like A a = new B()
class B extends A {
// code
}
// This class object can referenced using J like J j = new B()
class B implements J {
// code
}
// my question is what happens in case of below which referencing for runtime polymorphism?
class B extends A implements J {
// code
}
哪个无法编译:
Main.java:16:错误:重复类:B B 类实现 J { ^ Main.java:21:错误:重复类:B B 类扩展 A 实现 J { ^ 2 个错误