equals方法的編寫建議

2022-01-29 12:46:20 字數 507 閱讀 1845

//這條語句只是乙個優化。計算這個等式比乙個乙個地比較類中的域所付出的代價要小的多。

if (this == otherobject) return true;

//getclass

if(getclass != otherobject.getclass())

return false;

//instanceof

if(!(otherobject instanceof classname))

return false;

return field1 == other.field1

&& objects.equals(field2,other.field2)

&&···

如果在子類中重新定義equals,就要在其中包含呼叫super.equals(other);

編寫乙個完美的equals方法的建議

顯示引數命名為otherobject 檢測this與other是否引用同乙個物件if this otherobject return true 檢測otherobject是否為nullif otherobject null return false 比較this與otherobject是否屬於同一類...

Java完美重寫equals 方法的建議

下面給出編寫乙個完美的equals方法的建議 1 顯式引數命名為otherobject,稍後需要將它轉換成另乙個叫做other的變數 2 檢測 this與otherobject是否引用同乙個物件 if this otherobject return true 3 檢測otherobject是否為 n...

JAVA中equals的編寫

下面是為實現乙個高質量equals方法的處方 1 使用 操作符檢查 實參是否為指向物件的乙個引用 2 使用instanceof操作符檢查 實參是否為正確的型別 3 把實參轉換到正確的型別。4 對於該類中的每乙個 關鍵 域,檢查實參中的域是否與當前物件中對應的域值匹配。數值可以直接使用 比較,例項可以...