ホームページ  >  記事  >  Java  >  Javaでのオーバーロードと書き換えの違いは何ですか

Javaでのオーバーロードと書き換えの違いは何ですか

王林
王林オリジナル
2020-10-19 15:25:5455369ブラウズ

Java におけるオーバーロードと書き換えの違い: 1. オーバーロードはこのクラス内で発生し、書き換えは親クラスとサブクラスの間で発生します; 2. オーバーロードされたメソッド名は同じである必要があり、メソッド名を書き換えますが同じであり、戻り値の型が同じである必要があります; 3. オーバーロードされたパラメーターのリストは異なり、オーバーライドされたパラメーターのリストは同じである必要があります。

Javaでのオーバーロードと書き換えの違いは何ですか

オーバーロード

(推奨チュートリアル: java コース)

オーバーロードはこのクラスで発生します。メソッド名は同じですが、パラメータ リストは異なります。戻り値とは関係がありません。メソッド名、パラメータ リスト、およびパラメータの型にのみ関係します。

オーバーロード (オーバーロード): まず、A クラスに配置されるか、そのサブクラスのメソッド名は同じですが、メソッドのパラメーターが異なり、戻り値の型が同じである場合もあれば異なる場合もあります。

(1): メソッド名は同じである必要があります。

(2): メソッドのパラメータ リストは異なっていなければなりません。

(3): アクセス修飾子と戻り値の型は同じでも異なっていても構いません。

実際、簡単に言うと、オーバーロードとは、さまざまな状況に応じてさまざまなメソッドを作成することを意味します。たとえば、同じクラス内で、異なるパラメータを初期化するための異なるコンストラクタを作成します。

オーバーライド

オーバーライドは親クラスとサブクラスの間で発生します。たとえば、すべてのクラスは Object クラスを継承します。Object クラス自体には、equals、hashcode、toString があります。メソッドなどの定義サブクラス内の同じ名前と同じパラメータ リストは、メソッドのオーバーライドを構成します。

オーバーライド: 一般に、サブクラスと親クラスの間の関係を表します。その主な目的は、サブクラスと親クラスの間の関係を表現することです。特徴としては、メソッド名、パラメータは同じですが、具体的な実装が異なります。

書き換えの特徴:

(1): メソッド名と戻り値の型が同じである必要がある

(2): パラメータリストが同じである必要がある同じであること

(3): アクセス権限は、親クラスのオーバーライドされたメソッドのアクセス権限より低くすることはできません。例: 親クラスのメソッドが public として宣言されている場合、サブクラスでメソッドをオーバーライドするときにそのメソッドを protected として宣言することはできません。

(4): サブクラスと親クラスが同じパッケージ内にある場合、サブクラスは、private および Final として宣言されたメソッドを除く、親クラスのすべてのメソッドをオーバーライドできます。

(5): 構築メソッドはオーバーライドできません。

簡単に言うと、特定の実装クラスは親クラスのメソッドの実装に満足していないため、次のように記述する必要があります。それ自体が満足するもの、必要な方法。

関連する推奨事項:Java の使用を開始する

以上がJavaでのオーバーロードと書き換えの違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。