在Java中,使用interface來定義抽象的行為外觀,方法可宣告為public abstract。介面中的方法沒有實作時,一定得是公開且抽象,為了方便,也可以省略public abstract,而編譯器會自動幫你加上public abstract。在interface中,可以定義常數。
要在類別中定義列舉常數也是可以的,不過就一定要明確寫出public static final。
類別可以實作兩個以上的介面,如果有兩個介面都定義了某方法,而實作兩個介面的類別會怎樣嗎?以程式上來說,並不會有錯誤,照樣可以通過編譯。
如果表示不同的行為,Service在實作時,應該有不同的方法實作,Some與Other的execute方法就得在名稱上有所不同,Service在實作時才可以有兩個不同的方法實作。
如果表示相同的行為,那可以定義一個父介面,在當中定義execute方法,而Some與 Other繼承該介面,各自定義自己的doSome與doOther方法。
介面可以繼承別的介面,也可以同時繼承兩個以上的介面,同樣也是使用extends關鍵字,這代表了繼承父介面的行為。