- 用abstract關(guān)鍵字修飾一個(gè)類時(shí),這個(gè)類叫做抽象類;用abstract來(lái)修飾一個(gè)方法時(shí),該方法叫做抽象方法.
- 含有抽象方法的類,必須被聲明為抽象類,抽象類必須被繼承,抽象方法必須被重寫(xiě).
- 抽象類不能被實(shí)例化
- 抽象方法只需聲明,而不需實(shí)踐
舉例來(lái)說(shuō),我要做個(gè)游戲.
(多態(tài))我需要在一個(gè)主程序game類中有個(gè)draw方法,而在不同的,例如飛機(jī),坦克中重寫(xiě)draw方法以便畫(huà)出不同的事物.而這個(gè)主程序中的draw的方法不會(huì)被實(shí)現(xiàn),寫(xiě)不寫(xiě)都可以,只需要定義,實(shí)現(xiàn)只需要子類知道就可以了.而父類不需要清楚.根據(jù)之前學(xué)過(guò)的我們定義這個(gè)draw方法時(shí)候?yàn)?em>public void draw() { },而當(dāng)你學(xué)習(xí)了抽象類之后,可以將這個(gè)draw方法寫(xiě)為public abstract void draw{};( 相當(dāng)于C++中的純虛函數(shù)),這個(gè)時(shí)候,需要注意我們的類含有這個(gè)抽象方法時(shí),必須聲明為abstract class game;