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制定標准;數據廠商實現標准;用戶使用標准。 接口通常用來屏蔽底層的差異。
②接口也因為上述原因被用來保持架構的穩定性。