在 Java 中,abstract 用來修飾類以及方法。
注意:
- 不能用來修飾屬性和構造器;
- 不能用來修飾被 private、static、final 關鍵字修飾的方法以及 final 修飾的類。
修飾類
被 abstract 關鍵字修飾的類稱爲抽象類,具有以下特點:
- 不能實例化對象,但是類的其他功能依然存在;
- 在使用中,需開發人員提供抽象類的子類,讓子類對象實例化,完成相應操作。
修飾方法
被 abstract 關鍵字修飾的方法稱爲抽象方法,具有以下特點:
- 方法只有聲明,沒有具體的方法體;
- 有抽象方法的類,一定是抽象類,但抽象類中可以沒有抽象方法;
- 如果子類中重寫了父類中所有的抽象方法,此類纔可被實例化;否則,次子類仍然是一個抽象類,需要用 abstract 關鍵字修飾。