構造函數在何時被執行?
父類與子類執行的先后順序 靜態變量的執行特性 方法重寫(override)的注意事項
1.當父類與子類都有靜態代碼塊和構造函數的時候,執行順序如下:
父類靜態代碼塊 > 子類靜態代碼塊
父類構造函數 > 子類構造函數(先有父親,后有孩子)
如果是多級繼承關系的話,最高層的父類首先執行,然后依次遞減 總結:靜態優先執行,父類優先執行 注意:靜態代碼塊是在JVM加載類的時候執行的,而且靜態代碼塊執行且僅執行一次
2.
在調用類中的方法時,在方法體執行之前,首先要對類中的成員變量進行賦值,如果代碼中沒有賦具體的值,也有默認值。成員變量的賦值順序按照前后順序進行。 如果有既有直接賦值,也有構造方法賦值,那么根據先后順序執行3.重寫(Override) 重載(Overload) 重載是方法名字,返回類型一致,唯一不同的是方法的參數不同(參數類型不同,或者參數類型不同) 重寫:1. 發生方法重寫的兩個方法返回值,方法名,參數列表必須完全一致2. 子類拋出的異常不能超過父類相應的方法拋出的異常3. 子類方法的訪問級別不能低于父類相應方法的訪問級別(public,package,protected, private) 多態:
父類的引用指向了子類的對象,調用時執行的方法也是子類的方法,父類的方法并不會被執行 所謂多態就是父類或者接口類型的引用可以指向子類或者實現該接口的類的實例(對象)
如果大家對于學習Java有任何問題(學習方法,學習效率,如何就業),可以隨時來咨詢我,(教程/解答/交流群/學習方法/就業信息)等等 歡迎一起分享資源。