接口和接口實現類、接口與抽象類

今天在朋友的指導下,動手寫了點東西,對接口和接口實現類有了一些認識。

接口,只是在裏面寫一些方法名、參數等,不需要寫接口內方法的具體內容。

接口實現類,在類中寫接口的對應的方法以及方法的具體內容。

Example:

接口:

}


接口實現類:



知道接口的概念是什麼,也知道它的結構,就是感覺不知道它是什麼,

在腦子中沒有具體的概念,今天動手之後,感覺收穫不小,

對接口實現多態有了一些認識。

重要的,是動手。




接口和普通類的主要區別是:接口只能有行爲而不能有真正的實現體,這正是不能直接

實例化接口讓其完成相關功能的關鍵所在。而抽象類和普通類表面上的區別是其聲明部分有

無關鍵字abstract。例:

//該類爲普通類

public class A {

.....

}


// 該類爲抽象類

public abstract class b {

......

}


接口和抽象類既有相同點又有不同點,相同點爲:

1.接口不能被實例化,抽象類也不能被實例化

2.接口中可以有屬性,抽象類中也可以有屬性。

不同點:

1. 接口中的所有屬性與方法的聲明必須是public類型,

除abstract方法外,抽象類的屬性和方法既可以是public類型,又可以是private類型,

abstract方法只能是public類型或者protected類型。

2. 接口中的所有屬性都必須是常量,而抽象類中則沒這個限制。

3. 接口中的方法不能有方法體,而抽象類中的方法可以有方法體,甚至可以是抽象方法。

4.接口只能被類實現(implement),而抽象類只能被類繼承。

5. 接口可以多繼承,而抽象類只能單線繼承。

6. 接口不可以作爲主應用程序獨立運行,而抽象類在特定的聲明下卻可以作爲主應用

程序獨立運行




————空氣還在,希望還在。

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