Java相談室 Part4

このエントリーをはてなブックマークに追加
11おれも厨房
>>4=10

基本的なMyObejct.equals(Object o)の実装は以下の流れがいいよ。

public boolean equals(Object o){

 if (this == o) { return true; }

 if (obj != null && this.getClass() == o.getClass()) {

  MyObject mo = (MyObject)o;

  if( ここでthisとmo属性を比較 ) {
   return true;
  }

 }
 return false;

}

特に派生クラスについて考えがないうちは、
instanceofよりgetClass() がいいと思う。
このあたりは「Javaの鉄則」という本にかなり詳しい。