Java基礎筆記34——抽象
阿新 • • 發佈:2021-09-17
抽象類:是抽象方法與非抽象方法的集合
語法:
<修飾符> abstract class 抽象類名
{
抽象方法;
非抽象方法;
}
兩種特殊情況:
1.類中全部是抽象方法
2.類中全部是非抽象方法(意義不大)
注意:
1.抽象類不能例項化
2.父類的所有抽象方法必須在子類中提供具體的實現,否則子類只能被宣告為抽象類
3.抽象方法不能為static
注意以下兩種情況,一個類必須宣告為抽象類:
1.當類中存在一個或多個抽象方法時
2.當子類沒有實現父類的所有抽象方法時
3.當一個類實現一個介面,並且不能為全部抽象方法都提供實現時
抽象方法:
語法:
<修飾符> abstract 返回值型別 抽象方法名([引數型別]);
例子:
package com.lqh.chapter03; public abstract class AbstractClass { //父類的抽象方法 public abstract void getInfo(); //非抽象方法 public void getInfo2() { System.out.println("父類資訊"); } } class Son1 extends AbstractClass{ //子類必須實現父類所有的抽象方法 public void getInfo() { System.out.println("子類資訊1"); } } class Son2 extends AbstractClass{ public void getInfo() { System.out.println("子類資訊2"); } //子類可以選擇重寫父類的非抽象方法 public void getInfo2() { } }