所以,假設我正在嘗試完成需要某種形式抽象的任務。要子類或實現接口
這個任務可以通過子類化或通過實現接口來完成。
有沒有任何理由傾向於它們之一?
效率明智或公約明智呢?
一個例子
子類
public abstract class Main {
public abstract void doSomething();
}
public class SubMain extends Main {
public static void main(String[] args) {
new SubMain().doSomething();
}
@Override
public void doSomething() {
System.out.println("Example Method.");
}
}
而且實現接口
public interface TestInterface {
public abstract void doSomething();
}
public class MainWithInterface implements TestInterface {
public static void main(String[] args) {
new MainWithInterface().doSomething();
}
@Override
public void doSomething() {
System.out.println("Example Method.");
}
}