~這些年,我們一起學過的Java~04~接口與抽象類

考試結束後,終於開始繼續學習Java,前面部分忘了不少,果然印證了那句熟透了的習語:三天不做手生,三天不練口生。本來昨天熊哥上的接口與事件,但是事件那部分內容我真心木有聽進去,到後面太困了,處於又餓又困的狀態,好吧,廢話真的不可以多說,開始整理昨天上課滴內容。


按照自己的思維邏輯,我喜歡先提爲什麼會有接口,感覺需求對於一個新事物的出現尤爲重要,那麼接口的存在有什麼意義呢……首先最重要的,就是便於團隊開發,一個團隊少則兩三人,多則上百人,沒有模板,就會出現各種各樣的東西,接口在這裏,就起到了公共模板的作用。當然,接口也利於重寫,並且極大地豐富了類的繼承關係,因爲雖然接口不可以實例對象,但是,類可以繼承接口後,由類來實例對象,只是類實例對象後,必須調用接口裏面的所有抽象方法。

知道了接口的重要性,掌握接口的格式和一些注意的問題就不是難事啦!

首先,接口的格式是:

public interface 接口名 (需要繼承的話,就可以直接在背後加 extends 接口){

//在接口中只能定義常量和抽象方法

//定義常量

public static final 數據類型 常量名 = 值;

(由於接口裏面的訪問修飾符只能是public,所以public可以省略,static 和 final也是可以省略(爲什麼可以省略呢?有點不記得了……),總之前三個單詞都是可以省略滴)

數據類型 常量名 = 值; //這樣也是可以的啦!

//定義抽象方法

public abstract 返回值類型 方法名(數據類型 參數名);

返回值類型 方法名(數據類型 參數名); //這樣也是可以滴!

}

注意的問題之前也提過幾點,這裏補充一點的就是可以一個或多個子類繼承一個父類,而一個接口可以繼承一個或多個接口,這樣關係可不能弄混啦……

接口定義完當然要去實現它,實現接口的關鍵字就是 implements

格式就是:

public class 類名 extends 類或者抽象類 implements 接口 {

//子類必須實現接口中的所有抽象方法;

}

這裏提到了類實現接口,自然需要對二者進行小小的比較。

1.類的訪問修飾符不像接口那樣只有public,它可以是默認的,protected,private還有public;

2.一個或多個子類繼承一個父類,而一個接口可以繼承一個或多個接口;

3.接口裏面只能定義常量和抽象方法,而類可以定義普通方法,構造方法,屬性和常量;

4.關鍵字不同;

5.類可以實例對象,而接口不可以實例對象;

6.子類不需要實現父類的所有方法,而類必須實現父接口中的所有抽象方法;

7.抽象方法裏面是木有方法體滴……


下面提下抽象類,老實說,還是木有搞懂爲什麼要有抽象類的出現,它就是結合了類和接口的功能,但是仍然不可以實例對象而已。

public abstract class 抽象類名extends 類或抽象類 implements 接口名 {

//這裏面可以定義屬性 、常量 、抽象方法 、普通方法 、 構造方法。強調一點就是抽象方法定義的時候訪問修飾符可以是默認的,protected,public,但是就是不可以私有的,

//定義抽象方法

訪問修飾符(除private之外) abstract 返回值類型 方法名(數據類型 參數名);//注意木有方法體;

}


整理完之後,俺就開始苦逼的做作業去了,實現什麼什麼賬號密碼的登錄驗證……我先把界面搞出來再說……委屈




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章