interface和abstract interface 有什麼區別?今天來試驗一下,實驗代碼以下: java
public class Test { public static void main(String[] args){ PA pa = new PA(); pa.printA(); PB pb = new PB(); pb.printB(); } } interface A{ public void printA(); } abstract interface B{ public void printB(); } class PA implements A{ public void printA(){ System.out.println("A"); } } class PB implements B{ public void printB(){ System.out.println("B"); } }
首先能夠正確編譯運行,輸出A、B。網上有說abstract interface 只能被interface 繼承,不能直接被類implements的說法看來是錯誤的。 spa
反編譯A.class 和 B.class code
interface A { public abstract void printA(); }
interface B { public abstract void printB(); }能夠看出 interface和abstract interface進行的是一樣的處理。目前來看兩則沒有任何區別,歡迎你們討論補充。