今天在朋友的指導下,動手寫了點東西,對接口和接口實現類有了一些認識。
接口,只是在裏面寫一些方法名、參數等,不需要寫接口內方法的具體內容。
接口實現類,在類中寫接口的對應的方法以及方法的具體內容。
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. 接口不可以作爲主應用程序獨立運行,而抽象類在特定的聲明下卻可以作爲主應用
程序獨立運行
————空氣還在,希望還在。