2016-09-25 61 views
-3

我有一個基本的問題,有時候我們必須重寫java API Jar類方法來更改實現,我的問題是如何通過API類調用這些重寫的方法。API如何知道新的類名已經重寫了該方法?Java API中的重寫方法

+0

去通過這個職位,它可能會回答你的問題http://stackoverflow.com/questions/1543191/method-overriding-in-java – mhasan

回答

0

基本上爲該類生成的字節代碼獲得了用於重寫方法的字節碼。 所以當你創建一個子類型的對象。 JVM將在層次結構中上升,以在執行代碼時檢查方法的定義。如果它首先在子類中找到,那麼方法的定義將被執行,否則它將轉到父類。

對於一個小細節:該方法被調用時 程序的Java虛擬機

https://books.google.co.in/books?id=dg7bj_e-SAMC&pg=PA87&lpg=PA87&dq=details+of+jvm+overriding+methods&source=bl&ots=3bntcjfJDc&sig=rFo8uOVcwgW0FA1U33QbqiMkuYo&hl=en&sa=X&ved=0ahUKEwir79aAoqrPAhXMvY8KHVY-CPcQ6AEIQjAG#v=onepage&q=details%20of%20jvm%20overriding%20methods&f=false

0

在簡單的語言,當你將覆蓋實施和方法:你可以在閱讀本書,JVM將查看調用該方法的對象類型,並將搜索該類中的方法。如果未找到該方法,則它將執行超類中定義的方法。