Java基礎》10 抽象類 abstract

2021-09-11 07:07:05 字數 1299 閱讀 2972

個人學習總結:抽象類:

我們在描述一類事物的時候,該事物確實存在某種行為(方法),但是這種行為並不是具體的,那麼我們可以抽象這種行為的宣告(去掉方法的大括號,方法有大括號即具體的方法),而不去實現這種行為,這種行為成為抽象行為,使用抽象類描述該事物。

設計思想、目的:

可以強制要求子類重寫父類抽象的方法。保證繼承體系的完整性。

注意:

1、若乙個函式沒有方法體(大括號),那麼就必須使用abstract將該函式修飾為抽象的函式。例如:public abstract void heart();

2、若乙個類出現了抽象函式,那麼該類必須使用abstract修飾(若乙個類抽象方法,那麼該類肯定是乙個抽象類或者介面)。

3、若乙個非抽象類繼承了抽象類,那麼子類必須實現父類所有的抽象方法。

4、抽象類可以存在非抽象方法和抽象方法(語法上支援抽象類不加抽象方法,springboot1.5的web配置類webmvcconfigureradapter為抽象類,沒有抽象方法)面試

5、抽象類不能例項化(建立物件),因為抽象類存在抽象的方法,抽象類建立物件呼叫抽象的沒有意義。

6、抽象類存在構造方法,其作用是提供給子類建立物件時初始化父類屬性的。(面試)

// 抽象類

public abstract class person

// 非抽象方法

public void heart()

// 抽象方法

public abstract void game();

}// 子類

public class student extends person

@override

public void game()

}// 測試

public static void main(string args)

abstract不能和以下關鍵字共同修飾乙個方法:

1、private:私有的方法是不能被子類繼承的,也不存在覆蓋。

2、static :靜態的方法不能被重寫,使用static修飾後,可使用類名·方法名的方式呼叫,呼叫抽象的方法無意義。

3、final:final修飾的方法不能被重寫。

Java基礎 抽象類

抽象類 目前存在的問題 1.動物類的run方法描述的不正確。2.沒有強制要子類一定要重寫run方法 抽象類的應用場景 我們在描述一類事物的時候,發現這種事物確實存在某種行為,但是這種行為目前是不具體的,那麼我們可以抽取這種行為的宣告,但是不去實現這種行為,這種時候這種行為我們稱作為抽象行為,我們就需...

java基礎 抽象類

一 定義 在類中宣告乙個方法,這個方法沒有實現體,是乙個 空 方法,這樣的方法就叫抽象方法,使用修飾符 abstract 當乙個類有抽象方法的時候,該類就必須宣告為抽象類。二 例項 1 含有抽象方法的類,必須定義為抽象類 為animal增加乙個抽象方法eat 並且把animal宣告為abstract...

JAVA基礎 抽象類

1.子類必須覆蓋抽象類的全部抽象方法,否則子類還是抽象類。2.抽象方法必須定義在抽象類中,該類也必須被abstract修飾。3.抽象類不可以被例項化。4.抽象類中可以有構造方法,用於給子類初始化。5.抽象類中可以定義非抽象方法,但是很少見。6.抽象關鍵字不可以與那些關鍵字共存?private pri...