當前位置:才華齋>計算機>java語言>

Java語言的繼承結構

java語言 閱讀(5.89K)

導語:Java語言找那個多個具體的物件,不斷的向上抽取共享的內容,最終形成了一個體系,就是繼承體系。下面是Java語言的繼承結構,歡迎參考!

Java語言的繼承結構

  (1)把很多類的相同特徵和行為進行抽取,用一個類來描述。讓多個類和這個類產生一個關係。

這樣的話,多個類就可以省略很多程式碼。這個關係就是繼承。java中用extends關鍵字表示。

  (2)繼承的體系結構

A:多個具體的物件,不斷的向上抽取共享的內容,最終形成了一個體系。這個體系叫做繼承體系。

B:繼承體系的學習和使用原則

**學習頂層的內容。因為他是整個體系的共性內容。

**建立子類使用。也就是使用底層的具體物件。

  (3)繼承的特點:

A:java中只能單繼承,沒有多繼承。

B:java可以有多重(層)繼承。

  (4)繼承的好處:

繼承的出現提高了程式碼的複用性。

繼承的出現讓類與類之間產生了關係,提供了多型的前提。

  (5)子父類中的成員關係

A:成員變數

在子類方法中使用一個變數時:

首先,在方法的區域性變數中找這個變數,有則使用。

否則,在本類中找成員變數,有則使用。

否則,在父類中找成員變數,有則使用。

否則,報錯。

B:成員方法

用子類物件使用一個方法時。

首先,在子類中找這個方法,有則使用。

否則,在父類中找這個方法,有則使用。

否則,報錯。

重寫和過載的區別?

過載:在同一類中。方法名相同,引數列表不同。過載可以改變返回型別。

重寫:在不同類中(子父類中)。

方法宣告相同(返回型別,方法名,引數列表均相同)。

重寫需要注意:

**子類方法的訪問許可權要大於等於父類方法的訪問許可權。

**靜態只能重寫靜態。但是這種情況一般不會出現。

構造方法

**子類的例項化過程

***子類建立物件時,會先去建立父類的'物件。

預設是去呼叫父類的無參構造方法。

***子類構造方法中,第一行預設是super()

***為什麼子類中第一行會預設有super()

因為他繼承父類的成員使用,使用前這些成員必須初始化,

而他們是父類的成員,所以,必須通過父類進行初始化。

所以,會先建立一個父類的物件。

**當父類沒有無參構造方法時

必須使用this或者super呼叫其他的構造方法。

  (6)this和super的區別

this:代表本類物件的引用。

super:代表父類的儲存空間。