Java中的抽象类
- 抽象類不能被直接實例化
抽象類中可以包含著抽象方法,而抽象方法是沒有方法體的。因此如果將一個抽象類進行實例化,然后調用其中的抽象方法,會是一種無意義的方法調用。試想,new Person().eat() 方法的運行結果有何意義?所以,為了避免這種無意義的方法調用,在語法上抽象類是不能被直接實例化的。
- 抽象類的子類必須實現抽象方法(除非這個子類也是抽象類)
抽象類是以父類的形式出現的,是對子類的規約,要求子類必須實現抽象父類的抽象方法。
- 抽象類里可以有普通方法,也可以有抽象方法,但是有抽象方法的類必須是抽象類
抽象類里面也可以沒有抽象方法,只是把原來的類前面加上 abstract 關鍵字,使其變為抽象類。
比如:
abstract class Person {//普通方法public void aMethod(){ ... } }- 抽象類和普通類的唯一區別就是不能創建實例對象和允許有abstract方法。
總結
- 上一篇: 抽象类和封装
- 下一篇: request和response的set