Q:オブジェクトクラスは何ですか?
回答:オブジェクトクラスはjava.langパッケージに保存され、すべてのJavaクラスの究極の親クラスです(オブジェクトクラスを除く)。もちろん、配列もオブジェクトクラスを継承します。ただし、インターフェイスはオブジェクトクラスを継承せず、オブジェクトクラスはインターフェイスの親クラスとして機能しません。
次に、例を介してオブジェクトを分析します
public class objectStu {/*オブジェクトクラス:Javaのすべてのクラスの親クラス、トップレベルクラス*等しい:2つのオブジェクトが「等しい」かどうかを判断します。 * HashCode:オブジェクトのハッシュコード値を返します。これは、ハッシュセットやハッシュマップなどの後続のコンテナが要素を推定するためです。したがって、等しいとハッシュコードを同時に書き直す必要があります。 *書き換え後に満たされる基準: *等しい結果が真である場合、2つのオブジェクトのハッシュコード値は等しくなる必要があります。 *等しい結果がfalseの場合、2つのオブジェクトのハッシュコード値は不平等である必要があります。 (ハッシュコードは等しくなる可能性がありますが、等しくない場合、効率を改善できます) *toString:オブジェクトの文字列表現を返します *関数:プログラムでオブジェクトプロパティを表示し、コードをデバッグ *デバッグ学習: *1。バグがある可能性のあるブレークポイントを設定します *2. debug *3.f6として、現在のコードを実行します。 F5、この文に現在のコードの方法を入力します。 F8は、次のブレークポイントにすばやくジャンプします。次のブレークポイントがない場合は、残りのすべてのコードを実行 *等しい: *1。一貫性:オブジェクトAを使用して等しい呼び出し、オブジェクトBを比較して比較します。各時間の結果は同じ*2でなければなりません。反射性:オブジェクトAコールはオブジェクトBを比較し、オブジェクトBコールはオブジェクトAを比較するために等しくなります*/public static void main(string [] args){per = new person( "xiao wang"、10,150); pers fer1 = new person( "xiao wang"、20,140); per; system.out.println(per == per1); system.out.println(per.equals(per1)); string str = "123"; str.equals( "123"); str.hashcode(); system.out.println(per.hashcode()); system.out.println(per1.hashcode()); system.ou t.println(per2.hashcode()); system.out.println(per2.hashcode()); system.out.println(per); system.out.println(per1);}} class Person {string name; int age; int height; public person(string name、int age、int height){super(); this.height = height; this.name = name; this.age = age;}/*@override public boolean equals(object obj){if(this == obj){return true; } if(obj instanceof person){per per =(person)obj; if(this.name.equals(per.name)&& this.age == per.age){return true; }} falseを返します。 }*/// rewrite hashcode/*@override public int hashcode(){return name.hashcode()+age*31+height*31; } */@Override public int hashcode(){final int prime = 31; int result = 1; result = prime * result + age; result * result + height; result * result * result *(name == null)?0:name.hashcode(); (getClass()!= obj.getclass())return fals; person other =(person)obj; if(age!= other.age)return false; if(height!= other.height)return false; if(other.name!= null)return false;} elth(!name.name)return fals; {return "person [name ="+name+"、age ="+age+"]";}}要約します
上記は、Javaのオブジェクトクラスインスタンスの分析に関するこの記事のすべての内容です。誰にとっても役立つことを願っています。興味のある友達は引き続きこのサイトを参照できます:
Java内部テストクラスコードの詳細な説明
Javaの継承テストコード分析
Javaのスタック(スタック)のコード使用の例
欠点がある場合は、それを指摘するためにメッセージを残してください。このサイトへのご支援をありがとうございました!