抽象類別可以擁有建構子嗎?
儘管抽象類別具有抽象性質,但它們確實支援建構子的存在。
抽象類別建構子的利用與目的
抽象類別建構子有多種用途:
範例
考慮以下程式碼片段:
abstract class Product { int multiplyBy; public Product( int multiplyBy ) { this.multiplyBy = multiplyBy; } public int mutiply(int val) { return multiplyBy * val; } } class TimesTwo extends Product { public TimesTwo() { super(2); } } class TimesWhat extends Product { public TimesWhat(int what) { super(what); } }
在此範例中,抽象類別Product 擁有一個建構子設定multiplyBy字段。子類別 TimesTwo 和 TimesWhat 重寫此建構函式以提供自訂初始化。
注意:
需要注意的是,抽象類別不具有預設建構函數,因此子類別必須明確使用 super.
呼叫父建構函數以上是抽象類別可以有建構函數嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!