Java基礎,學習面向對象的抽象方法,案例練習Java編寫:葵花寶典

JAVA面向對象學習之抽象的概述及其特點

22.1 抽象類

1、 概念:抽象就是指看不懂的類。

2、抽象類的特點:

2.1抽象和抽象方法必須用abstract關鍵字修飾

abstract class 類名 {}

public abstract void eat() ;

2.2 抽象類不一定有抽象方法,有抽象方法的類一定是抽象類或者是接口;

2.3 抽象類不能實例化,所以,按照多態的方式,由具體的子類實例化。其實這也是多態的一種,抽象類多態。

2.4 抽象類的子類:要麼是抽象類,要麼重寫抽象類中的所有抽象方法。

案例演示如圖1所示:

Java基礎,學習面向對象的抽象方法,案例練習Java編寫:葵花寶典

圖1

3、抽象類的成員特點:

3.1成員變量:既可以是變量,也可以是常量;

3.2有構造方法:用於子類訪問父類數據的初始化;

3.3 成員方法:既可以是抽象的,也可以是非抽象的。

4、抽象類的成員方法特性:

4.1 抽象方法:強制要求子類做的事情;

4.2 非抽象方法:子類繼承的事情,提高代碼複用性。

案例演示如圖2所示:

Java基礎,學習面向對象的抽象方法,案例練習Java編寫:葵花寶典

圖2

5、案例練習:演示葵花寶典,如圖3所示:

Java基礎,學習面向對象的抽象方法,案例練習Java編寫:葵花寶典

圖3

6、案例練習貓和狗的案例:如圖4所示:

Java基礎,學習面向對象的抽象方法,案例練習Java編寫:葵花寶典

圖4

6、案例練習教師的案例:如圖5所示:

Java基礎,學習面向對象的抽象方法,案例練習Java編寫:葵花寶典

圖5

7、案例練習員工的案例:如圖6所示:

Java基礎,學習面向對象的抽象方法,案例練習Java編寫:葵花寶典

圖6

說明:不能與abstract同時使用的關鍵字有:static、final、private。

static:被修飾的可以用類名.調用,但類名.調用抽象方法時沒有意思的;

final:被final修飾的不讓子類重寫,而abstract修飾的方法時強制子類重寫,所以矛盾。

private:被private修飾不讓子類訪問,而abstract修飾的是為了讓子類看到並強制重寫,所以矛盾。

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

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


分享到:


相關文章: