糯米文學吧

位置:首頁 > 計算機 > java語言

Java中的抽象類

java語言2.26W

導語:抽象方法是沒有方法體的,這樣的調用無意義。那麼Java中的抽象類有什麼意義呢?讓我們瞭解一下吧!

Java中的抽象類

  (1)多個類有相同的方法聲明,但是方法體不一樣。這個時候,我們考慮把方法聲明進行抽取。

讓子類繼承後,自己去實現方法體。沒有方法體的方法,我們需要用抽象標誌下。

抽象的關鍵字是:abstract。

  (2)抽象類:

該方法稱為抽象方法,包含抽象方法的類就是抽象類。

  (3)抽象類的特點:

A:抽象類和抽象方法都要用abstract進行修飾

B:抽象類不能被實例化

C:抽象類中不一定有抽象方法,但是,有抽象方法的類一定是抽象類。

  (4)抽象類中數據的特點

A:成員變量

抽象類中可以有變量,也可以有常量。

B:成員方法

抽象類中可以有抽象方法,也可以有非抽象方法。

C:構造方法

抽象類是一個類,所以,它有構造方法。

雖然本身不能實例化。但是可以給子類實例化使用。

  (5)抽象類中的問題

A:抽象類中是否有構造方法?能不能被實例化?如果不能,為什麼有構造方法?

抽象類有構造方法。

抽象類不能被實例化。

抽象類中的構造方法供子類實例化調用。

B:抽象關鍵字abstract不可以和哪些關鍵字共存?

**private:

私有內容子類繼承不到,所以,不能重寫。

但是abstract修飾的方法,要求被重寫。兩者衝突。

**final

final修飾的'方法不能被重寫。

而abstract修飾的方法,要求被重寫。兩者衝突。

**static

假如一個抽象方法能通過static修飾,那麼這個方法,就可以直接通過類名調用。

而抽象方法是沒有方法體的,這樣的調用無意義。所以,不能用static修飾。

C:抽象類中可不可以沒有抽象方法?如果可以,這樣的類有什麼用嗎?

抽象類可以沒有抽象方法。

抽象類中沒有抽象方法的作用,只是為了不讓別的類建立該抽象類對象。這個在awt中有體現。

標籤:JAVA 抽象類