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

對象-Java中子類重載的問題

編輯:編程解疑
Java中子類重載的問題

比如我現在又兩個具有繼承關系的類:
父類:Animal
子類:Dog
在父類中有一個方法eat()
在子類中,除了繼承了父類的eat()方法外,我自己還寫了一個eat()的重載方法:eat(String a)

然後創建對象:
Animal a = new Dog();
為什麼在創建對象a後,調用eat方法時,不能調用eat(String a)方法,而只能調用eat()方法?

最佳回答:


我是初學者,我說說自己的理解哈。一個是eat(),一個是eat(String a)。參數類型不一樣,也就是沒有覆蓋。那麼,animal a = new dog();已經向上轉型了,dog已經是animal,所以運行的也應該是animal裡面的方法,而不是dog裡面的方法。但是如果另一種情況dog裡面的方法也是eat()的話,那就方法覆蓋了,這個時候就會運行dog裡面的eat了。我說的好像不是很清楚。。。。。。

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