2016-09-25 5 views
-3

私は1つの基本的な質問があります。実装の変更のためにJava API Jarクラスメソッドをオーバーライドする必要がある場合があります。私の質問は、これらのオーバーライドされたメソッドがAPI Classes.How 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はメソッドを呼び出すオブジェクト型を調べ、そのクラスのメソッドを検索します。メソッドが見つからない場合は、スーパークラスで定義されたメソッドが実行されます。

関連する問題