一、好處:
繼承的本質在於抽象。類是對物件的抽象,繼承是對某一批類的抽象。
為了提高**的復用性,子類可以呼叫父類的方法和屬性。
二、乙個子類只能繼承乙個父類,但介面可以繼承多個父介面。public class animal
class bird extends animal
三、super 是直接父類物件的引用,可以通過super來訪問父類中被子類覆蓋的方法或屬性。
四、方法重寫
在子類中可以根據需要對從基類中繼承來的方法進行重寫。
重寫方法必須和被重寫方法具有相同方法名稱、引數列表和返回型別。
重寫方法不能使用比被重寫方法更嚴格的訪問許可權。(由於多型)
只宣告了方法,同時使用了abstract修飾,沒有方法體!必須要子類來重寫!
包含抽象方法的類,必須設計成抽象類!
1.通過抽象類,可以避免子類設計的隨意性。
2.有抽象方法的類只能定義能抽象類
3.抽象類不能例項化,及不能用new來例項化抽象類。
4.抽象類可以包含屬性、方法、構造方法。但是構造方法不能用來new例項,只能用來被子類呼叫。
5.抽象類只能用來繼承。
6.抽象方法必須被子類實現。
格式:
[訪問修飾符] inte***ce 介面名 [extends 父介面1,父介面2…]
1.子類通過implements來實現介面中的規範
2.介面不能建立例項,但是可用於宣告引用變數型別。
3.乙個類實現了介面,必須實現介面中所有的方法,並且這些方法只能是public的。
4.介面中只能包含靜態常量、抽象方法,不能有普通屬性、構造方法、普通方法。
5.常量必然是:public static final。我們不加這些修飾符,也是這樣。
6.方法必然是:public abstrac。我們不加這些修飾符,也是這樣。
7.介面完全支援多繼承。和類的繼承類似,子介面擴充套件某個父介面,將會獲得父介面中所定義的一切
JAVASE抽象方法,介面
一抽象類 1抽象類的產生 當編寫乙個類時,我們往往會為該類定義一些方法,這些方法是用來描述該類的功能具體實現方式,那麼這些方法都有具體的方法體。但是有的時候,某個父類只是知道子類應該包含怎麼樣的方法,但是無法準確知道子類如何實現這些方法。比如乙個圖形類應該有乙個求周長的方法,但是不同的圖形求周長的演...
抽象類,抽象方法,介面
抽象類 類中含有抽象方法 abstract修飾 但抽象類中也可以沒有抽象方法,類使用abstract修飾依然不會報錯,但有抽象方法類一定為抽象類,將可以形成某一類方法的使用定義為抽象方法,供所有子類覆蓋重寫使用,抽象類中可以有構造方法,當被其他類繼承時,呼叫父類的super 繼承父類的抽象方法。抽象...
C 抽象方法 虛方法 介面
抽象方法和虛方法都可以寫在抽象類中,它們有什麼區別呢?接下來就讓我帶你分析一下吧。一 virtual方法 虛方法 virtual 關鍵字用於在基類中修飾方法,它有兩種情況 1 在基類中定義virtual方法,但在派生類中沒有重寫該虛方法。那麼在堆派生類例項呼叫中,該虛方法使用的是基類定義的方法。2 ...