java中子類能不能繼承父類構造方法

2021-08-16 17:33:13 字數 886 閱讀 3751

結果有些和想象中的不一樣吧。

原因如下:其實每個子類構造方法的第一條語句,都是隱含地呼叫super(),如果父類沒有這種形式的建構函式,那麼在編譯的時候就會報錯。

所以父類中的構造方法是不能繼承的,但是在例項化子類的時候會呼叫父類的構造方法,這樣就能解釋下面這種情況了。

面試題目1:

指出下面程式的執行結果:

public class test 

}class a

public a()

}class b extends a

public b()

}

運算結果:1a2b2b

面試題目2

繼承時候類的執行順序問題,一般都是選擇題,問你將會列印出什麼? 【基礎】

父類:package test;

public class fatherclass

}子類:

package test;

import test.fatherclass;

public class childclass extends fatherclass

public static void main(string args)

}答:輸出結果為:

fatherclass create

fatherclass create

childclass create

子類能不能繼承父類的成員變數

1 關於私有成員變數 無論父類中的成員變數是私有的 共有的 還是其它型別的,子類都會擁有父類中的這些成員變數。但是父類中的私有成員變數,無法在子類中直接訪問,必須通過從父類中繼承得到的protected public方法 如getter setter方法 來訪問。2 關於靜態成員變數 無論父類中的成...

java中子類繼承父類程式執行順序

我們經常在專案中使用繼承,但是往往不太明白,程式執行的順序以及原理,尤其是使用上轉型物件的時候,以及父類子類中都有static變數和方法時,不知道先執行誰。下面是乙個簡單的繼承,來檢視 的執行順序 package test class person person class student exte...

python中子類不能繼承父類的私有屬性和方法

在子類中是不能繼承私有屬性和方法的,但是私有屬性和方法可以在同乙個類中被呼叫 class person object def init self,name self.name name self.age 12 def greet self print hello,my name is s self....