Javaでの過負荷と上書きについて言えば、誰もがそれに精通していますが、今日はこれを書きます。
この記事のトピック:
1。オーバーロードとは何ですか
2。カバレッジとは何ですか
3。2つの違い
過負荷:
クラスでは、同じ名前の2つ以上の関数が表示される場合、パラメーターの数またはパラメーターの種類が異なる限り、関数の過負荷と呼ばれます。
つまり、関数の名前が同じ場合、パラメーターリストのみを確認します。返品値のタイプとは何の関係もありません。
過負荷を使用する場合に注意してください:
1.オーバーロードを使用する場合、異なるパラメータースタイルのみを渡すことができます。たとえば、異なるパラメータータイプ、異なるパラメーター番号、および異なるパラメーター順序。
2。例外タイプとメソッドの数は、過負荷に影響しません。
3。親クラスの場合、子クラスは親クラスの継承方法と同じ名前のメソッドを過負荷できます。メソッドが親クラスにアクセス許可を持ち、Priavteである場合、子クラスで過負荷にすることはできません。定義されている場合、新しい方法のみを定義し、過負荷の効果を達成しません。
オーバーライド:
子の親クラスにまったく同じ方法が表示されると、サブクラスオブジェクトを作成するとサブクラスでメソッドが実行されます。親クラスの方法は上書きされているようです。したがって、この状況は関数のもう1つの機能、つまり上書きです。
いつカバレッジを使用しますか?
子クラスが親クラスを継承する場合、親クラスの機能的な内容を変更する必要があります。
メソッドをカバーするときは、2つのポイントに注意してください。
1.サブクラスが親クラスをオーバーライドする場合、サブクラスメソッドの権限が、継承を達成するために親クラスメソッドの許可以上であることを確認する必要があります。それ以外の場合、コンピレーションは失敗します。
2。カバーすると、静的であるか、静的ではありません。 (staticは静的のみをカバーするか、静的でカバーすることができます)はい
3.最終的な変更方法は最終的な方法であり、上書きすることはできません。
4.子クラスが親クラスの方法をオーバーライドする場合、子クラスが親クラスのいくつかの問題を解決し、親クラスよりも多くの問題を抱えることができないため、親クラスよりも少ない例外しかスローしません。
過負荷と上書きの違い:
1.メソッドのオーバーライドは、サブクラスと親クラスの関係であり、これは垂直関係です。メソッドの過負荷は、同じクラスのメソッド間の関係であり、これは水平な関係です。
2。上書きは、1つの方法によってのみ引き起こされるか、1つのメソッドのみによって引き起こされます。メソッドの過負荷は、複数のメソッド間の関係です。
3.カバレッジ要件パラメーターリストは同じです。過負荷要件パラメーターリストは異なります。
4。上書き関係では、メソッド本体はオブジェクトのタイプに基づいて呼ばれます。過負荷の関係は、実際のパラメーターテーブルと呼び出し時の正式なパラメーターテーブルに基づいて選択されます。
上記は、編集者があなたにもたらしたJavaの過負荷とカバレッジについての詳細な理解です。誰もがwulin.comをもっとサポートできることを願っています〜