Java 抽象類和介面分析 菜鳥學習之旅
阿新 • • 發佈:2022-03-14
1.抽象類
抽象類用abstract來修飾,例如:
package com.test.abstractaaa;
public abstract class TestAbstract {
}
抽象類是用來捕捉子類的通用性的,它不能被例項化,只能用作子類的超類,抽象類是被用來建立繼承層級裡子類的模板。
通俗地去講:
雖然可以使用兩組對邊分別平行的四邊形和兩條邊相等的三角形分別定義平行四邊形和等腰三角形。
但卻不能使用具體的語言去定義圖形。
在Java中,把類似無法使用具體語言定義的圖形類稱為抽象類。
語法如下:
【許可權修飾符】abstract class 類名{
類體
}
用abstract關鍵字定義的方法稱為抽象方法語法如下:
【許可權修飾符】abstract 方法返回值型別 方法名(引數列表);
抽象方法直接以分號結尾,沒有方法體,所以其本身沒有任何意義,除非被重寫,而承載這個抽象方法的抽象類,必須被繼承。
實際上,抽象類除了杯繼承之外沒有任何意義。
繼承抽象類的所有子類都需重寫抽象類的抽象方法。
!!注意:構造方法不能被定義為抽象方法。