詳述父類構造方法對子類構造方法的影響

2021-10-03 19:16:26 字數 751 閱讀 1426

father類:

public class

father

}}

son類:

public class

sonextends

father

}}

test類:

public class

test

}

乙個類中如果沒有定義構造方法,預設有乙個無參構造方法,其結構如下:

`public 類名(

)

this(引數列表)呼叫本類構造方法,但必須放在有效**行的第一行,所以乙個構造方法中如果已經呼叫了本類構造方法,則該構造方法不能直接呼叫父類構造方法。(thissuper不能同時存在)

如果子類構造方法沒有呼叫本類構造方法,也沒有指定呼叫父類構造方法,則預設呼叫父類無參構造方法。

總結:a. 如果父類擁有無參構造方法(無論隱式顯式)且子類中的構造方法有沒有精確指定呼叫父類那個構造方法,則子類中沒有呼叫該子類其它構造方法的構造方法使用super()隱式呼叫父類的無參構造方法。

b. 如果父類沒有無參構造方法(無論隱式顯式),則要求子類構造方法必須直接或間接指定呼叫父類哪個構造方法並且放在有效**第一行。

詳述父類構造方法對子類構造方法影響

1 乙個類中如果沒有定義構造方法,預設有乙個無參構造方法,其結構如下 public 類名 2 this 引數列表 呼叫本類構造方法,但必須放在有效 行的第一行 所以乙個構造方法中如果已經呼叫了本類構造方法,則該構造方法不能直接呼叫父類構造方法。3 如果子類構造方法沒有呼叫本類構造方法,也沒有指定呼叫...

詳述父類構造方法對子類影響

首先說明,當乙個類中沒有定義構造方法,則預設有乙個隱式的無參構造方法,其結構如下 public 類名 super super 用於呼叫父類構造方法,它必須位於構造方法方法體的第一行有效 位置 this 用於呼叫本類構造方法,它也必須位於構造方法方法體的第一行有效 位置 當定義了乙個有參構造方法,便沒...

詳述父類構造方法對子類構造方法的影響

1 乙個類中如果沒有定義構造方法,則預設有乙個無參構造方法,其結構如下 public class test2 this 引數列表 呼叫本類構造方法,但必須放在有效 行的第一行 所以乙個構造方法中如果已經呼叫了本類構造方法,則該構造方法不能直接呼叫父類構造方法,但可以間接呼叫父類構造方法。3 如果父類...