JAVA面向對象之代碼塊和繼承的學習分享,分析繼承特點和體系結構

JAVA面向對象學習之代碼塊

19.1 代碼塊的概念

1、代碼塊指在Java中,使用{ }括起來的代碼稱為代碼塊。

2、代碼塊的分類:根據代碼塊的位置和聲明的不同,可以分為局部代碼塊、構造代碼塊、靜態代碼塊、同步代碼塊。

3、常見代碼塊的應用:

3.1 局部代碼塊,在方法中出現,限定變量的生命週期,及早釋放,提高內存利用率;

3.2 構造代碼塊(初始化塊):在類中出現。多個構造方法中相同的代碼存放到一起,每次調用構造都行,並且在構造方法前執行;

3.3 靜態代碼塊:在類中方法外出現,加了static修飾。用於給類進行初始化,在加載的時候就執行,並且只執行一次。一般用於加載驅動。

局部變量代碼塊演示如圖1所示:

JAVA面向對象之代碼塊和繼承的學習分享,分析繼承特點和體系結構

圖1

靜態代碼塊:

a. 隨著類的加載而加載,且只執行一次;

b. 作用:用來各類進行初始化,一般用來加載驅動;

c. 靜態代碼塊優先於主方法執行。

程序演示如圖2:

JAVA面向對象之代碼塊和繼承的學習分享,分析繼承特點和體系結構

圖2

練習:靜態代碼塊優先於主方法執行。演示如下圖3所示:

JAVA面向對象之代碼塊和繼承的學習分享,分析繼承特點和體系結構

圖3

19.2 繼承

1、繼承(extends):讓類與類之間產生關係,子父類關係。

2、繼承案例演示如圖4所示:

JAVA面向對象之代碼塊和繼承的學習分享,分析繼承特點和體系結構

圖4

說明: extend是繼承的意思;

Animal是父類;

Cat和Dog都是子類。

3、繼承的利弊

3.1 好處:a.提高代碼的複用性;

b.提高代碼的維護性;

c.讓類與類之間產生了關係,是多態的前提。

3.2弊端:類的耦合性被增強了,但開發的原則是高內聚,低耦合;

耦合:類與類的關係。

內聚:獨自完成某個動作的能力。

4、Java中類的繼承特點:

a.Java中只只支持單繼承,不支持多繼承。(一個孩子只有一個父親)

b.Java支持多層繼承(繼承體系)

繼承的程序演示如圖5所示:

JAVA面向對象之代碼塊和繼承的學習分享,分析繼承特點和體系結構

圖5

說明:若想用繼承體系的所有功能,用最底層的類創建方法;

若想看繼承體系的共性功能,用最頂層的類。

5、繼承的注意事項:

5.1 子類只能繼承父類所有非私有的成員(成員方法和成員變量)

5.2 子類不能繼承父類的構造方法,但是可以通過super關鍵字去訪問父類構造方法。

5.3 不要為了部分功能而去繼承。

程序演示如圖6、7所示:

JAVA面向對象之代碼塊和繼承的學習分享,分析繼承特點和體系結構

圖6

JAVA面向對象之代碼塊和繼承的學習分享,分析繼承特點和體系結構

圖7

感謝支持,我是小區日記本,每天根據小編的學習,持續分享學習的筆記與心得。

案例代碼截圖僅包含部分,小編已整理了全部代碼並分享,可免費領取,私信回覆2個字:代碼


分享到:


相關文章: