接口:對類來說是一套規範,是一套行為協定
文法:
<權限通路修飾符> interface 接口名稱
{
常量;
抽象方法;
}
常量預設修飾符:public static final
抽象方法預設修飾符:public abstract
注意:
1.接口不是類,沒有構造器,不能執行個體化
2.接口使用interface關鍵字修飾,不是class
3.接口與接口之間可以多繼承,但是不影響面向對象三大特征之一:單繼承
4.類與接口之間的關系(多實作):實作關系,一個類可以實作多個接口
5.一個類可以在繼承一個父類的同時,實作一個或多個接口
相同點:
1.都可以定義抽象方法
2.都可以定義常量
3.不能被執行個體化
4.所有的方法不能使用static、final修飾
不同點:
1.接口使用interface修飾,抽象類使用class修飾
2.抽象類隻能被單繼承,接口可以被多繼承,多實作
3.抽象類中可以定義非抽象方法,接口隻能定義抽象方法
AudioDevice.java:
VADevice.java:
VideoDevice.java:
Television.java:
Test.java:
輸出結果為:
開機 開始播放 暫停播放 終止播放 關機