程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> 對象-JAVA中有關類的一個基礎問題

對象-JAVA中有關類的一個基礎問題

編輯:編程綜合問答
JAVA中有關類的一個基礎問題

父類Father和子類Son,父類中有一個方法A,在子類中也定義了一模一樣的一個方法A(具有與老方法相同的方法簽名),那麼在子類中那個A自然會把父類中的A給覆蓋了。通過子類的對象調用方法A的時候,自然執行的是子類的A,通過父類的對象調用A的時候,自然執行的是父類的A,那麼問題是:如果父類中有一個成員變量是子類Son,那麼在父類中通過調用這個私有對象變量的方法A的時候, 是子類的A,還是父類的A?

最佳回答:


這麼給你說吧,假如你實例化son,jvm會根據繼承關系先調用父類構造函數,但是在調用所有構造函數之前會將每個類的對象初始化(不是你賦值時的初始化)成二進制的0
,所以父類任然會調用子類的方法,但是結果完全不可預料,所以強烈建議不要這樣寫。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved