メソッドを生成する方法を探ります。Eclipseのコード自動生成がどれほど強力で便利であるかを説明し、さらにコードの入念なテストが必要であることを強調します。2つのオブジェクトが等価かどうかを確認するために使用されます。これをテストする良い方法は、オブジェクトが対称的、再帰的、そして推移的であることを確認することです。1つの規則に従う必要があります。値を持たなければなりません3プリミティブを持つクラスプリミティブメンバー変数のみで構成されるJavaクラスを考えてみましょう。Eclipseはこのようなダイアログボックスを提供します。リンク:/uploads/eclipse-equals-hascode-295x300.png%20295w[][すべて選択]を選択すると、すべてのメンバー変数を確実に含めることができます。Point:の下にリストされているオプションは、生成されたコードのスタイルに影響することに注意してください。ここでは、これらのオプションのいずれも選択せずに[OK]を選択すると、メソッドがクラスに追加されます。メソッドは素数の宣言(31)から始まり、プリミティブオブジェクトに対してさまざまな操作を実行し、オブジェクトの状態に基づいてその結果を返します。2つのオブジェクトが同じインスタンス(==)であるかどうかを最初に確認し、一致する場合はtrueを返します。次に、比較オブジェクトがnullでなく、両方のオブジェクトが同じクラスであることを確認し、そうでない場合はfalseを返します。各メンバ変数の等価性をチェックし、いずれかが等しくない場合はfalseを返します。簡単なテストを書くことができます。dObject.hashCode());4コレクションとジェネリックスを持つクラスそれでは、コレクションと総称を含む、より複雑なJavaクラスを考えてみましょう。equals()」を使用します。instanceOf__を使用しています。コアJavaメソッドに依存しています。hashCode()__値を合計して結果を返します。これらは、フィールドを比較することによってコレクションの等価性を比較します。いくつかの例をテストすることで、堅牢性を検証できます。継承を使うJavaクラスを考えましょう。再宣言しないことを警告します。機能しない可能性があります。生成しようとすると、スーパークラスShapeに関する警告が表示されます。Eclipseは警告にもかかわらず私たちが前進することを可能にするでしょう。その場合はEclipseを無視できます。メンバ変数、およびそれ自身の色変数を継承します。使用することを意味します。異なる場合は不十分であることがわかります。生成して、これを修正しましょう。ブロックが表示されます。正しく計算されているので、上からテストを再実行して、今すぐパスします。hashCode()Eclipseが何をしているのかを理解することで、これらのコーディング作業に費やす時間を減らすことができます。予想されるすべてのケースを確実に処理できるように、注意を払いながらコードをテストで検証する必要があります。GitHub]にあります。