標籤:
JAVA的核心概念:介面(interface)
介面與類屬於同一層次,實際上,介面是一種特殊的抽象類別。
如: interface IA{ } public interface:
公開介面 與類相似,一個檔案只能有一個public介面,且與檔案名稱相同。 在一個檔案中不可同時定義一個public介面和一個public類。
一個介面中,所有方法為公開、抽象方法;所有的屬性都是公開、靜態、常量。
一個類實現一個介面的格式: class IAImple implements IA{ }; 一個類實現介面,相當於它繼承一個抽象類別。
類必須實現介面中的方法,否則其為一抽象類別。 實現中介面和類相同。
介面中可不寫public,但在子類中實現介面的過程中public不可省。
(如果剩去public則在編譯的時候提示出錯:對象無法從介面中實現方法。)
註: ① 一個類除繼承另外一個類,還可以實現介面; class IAImpl extends java.util.Arrylist implement IA{}
繼承類 實現介面 這樣可以實現變相的多繼承。
② 一個類只能繼承另外一個類,但是它可以繼承多個介面,中間用“,”隔開。
Implements IA,IB 所謂實現一個介面,就是指實現介面中的方法。
③ 介面和介面之間可以定義繼承關係,並且介面之間允許實現多繼承。
例:interface IC extends IA,IB{}; 介面也可以用於定義對象 IA I=new IAImpl(); 實現的類從父類和介面繼承的都可做運行時類型。
IAImple extends A implement IA,IB IB I=new IAImple();
I instance of IAImple; I instance of A; I instance of IA; I instance of IB; 返回的結果均為true.
介面和多態都為JAVA技術的核心。
介面往往被我們定義成一類XX的東西。 介面實際上是定義一個規範、標準。
① 通過介面可以實現不同層次、不同體系對象的共同屬性; 通過介面實現write once as anywhere. 以JAVA資料庫連接為例子:JDBC制定標準;資料廠商實現標準;使用者使用標準。 介面通常用來屏蔽底層的差異。
②介面也因為上述原因被用來保持架構的穩定性。
JAVA的核心概念:介面(interface)