天天看點

java程式設計思想——抽象類

一、抽象類

1、什麼是抽象類

對于類的某個方法可以描述這個的某個特性。比如動物的跑等,但是不同的對象可能方法是不一樣的。

這就需要對方法進行抽象。這樣就可以根據不同的類的特點,進行繼承,然後再對抽象的方法進行重寫。

abstract class **

{

abstract void **();

}

2、抽象類的特點

(1)抽象類不可以被執行個體化

(2)抽象類的抽象方法隻是被聲明,不被實作。方法要被關鍵字abstract描述。抽象方法對應的抽象類,也要被abstract關鍵字描述。

(3)抽象類中被繼承後,必須要把所有的抽象的方法進行實作。否則其還是抽象類,不能進行執行個體化。

3、抽象類一些問題

(1)抽象類有無構造函數

      抽象類是有構造函數的。抽象類會有子類,抽象類中的構造函數可以給子類進行初始化。

(2)抽象類中可以不定義抽象方法麼?

      可以!

    很少見,目的就是不讓其建立對象。

(3)抽象關鍵字不可以和哪些關鍵字共存?

private不可以,因為抽象方法要被覆寫,私有的方法不能被覆寫。

static不可以

final不可以

(4)抽象類和一般類的異同?

相同:都是描述類的

不同:抽象類隻有聲明,沒有具體的描述。

            一般類中不能定義抽象方法,而抽象類中可以定義抽象方法。

(5)抽象類一定是一個父類麼?

是的!需要子類覆寫其方法,才能進行執行個體化!