抽象类和接口Java

时间:2015-03-03 22:33:17

标签: java interface overloading abstract

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)。

1 个答案:

答案 0 :(得分:4)

public abstract class Choice3 extends AbstractA implements InterfaceC 

当你的类是抽象的时候,它不需要实现其直接/间接抽象父类的所有方法