A类
public abstract class AbstractA {
public abstract void method1(int a);
public void method2() {
System.out.println("method2");
} // end method2
public abstract void method3();
}
B类
public abstract class AbstractB {
public abstract void method3();
public abstract void method4();
}
C类
public interface InterfaceC {
void method1(int a, int b);
void method2();
void method4();
}
测试
public abstract class Choice3 extends AbstractA implements InterfaceC {
public void method1(int a) {}
public void method4() {}
} // end class
我很困惑为什么选择3实际编译。它确实重载了method1(int a),但实际上没有重载method1(inta intb)。
答案 0 :(得分:4)
public abstract class Choice3 extends AbstractA implements InterfaceC
当你的类是抽象的时候,它不需要实现其直接/间接抽象父类的所有方法