抽象方法和抽象類
阿新 • • 發佈:2020-09-08
public abstract class 類名稱 { //... }
抽象方法
public abstract class 類名稱 { public abstract void 方法名稱(引數列表); }
抽象類和抽象方法的使用
1;不能直接建立new抽象類物件
2:必須用一個子類繼承抽象父類
3:子類必須覆蓋重寫抽象父類中的所有抽象方法
覆蓋重寫:子類去掉[abstract]關鍵字,然後補上方法體大括號。
public abstract class Demo { public abstractvoid eat(); }
public class Test extends Demo{ public static void main(String[] args) { Test test=new Test(); test.eat(); } @Override public void eat() { System.out.println("完成子類對父類抽象方法的覆蓋重寫"); } }
執行結果:
注意事項:
1:抽象類不能建立物件,如果建立,編譯無法通過而報錯,只能建立其非抽象類子類的物件。
2:抽象類中,可以有構造方法,是供子類建立物件時,初始化父類成員使用的
3:抽象類中,不一定包含抽象方法,但是含有抽象方法的類一定是抽象類
4:抽象類的子類,必須覆蓋重寫抽象父類中的所有抽象方法,否則,編譯無法通過而報錯,除非該子類也是抽象類