2. boolean equals(Object ob)
3. sprawdzaj na początku instanceof!
4. nie używaj transient zmiennych w hashCode()
@Test
public void test1() {
NotEqualOverriding a = new NotEqualOverriding();
NotEqualOverriding b = new NotEqualOverriding();
a.equals(b); //wersja 1 z return false;
a.equals((Object)b); //wersja 2
}
class NotEqualOverriding{
/*Tylko overloading*/
boolean equals(NotEqualOverriding er){
return false;
}
/** -> zonk to jest overloading! */
// @Override
public boolean equals(Object obj) {
// dodaj na poczatku test is-A!!
System.out.println(" nadpisny equal");
return super.equals(obj);
}
@Override
public int hashCode() {
int hash = 7;
return hash;
}
}
Brak komentarzy:
Prześlij komentarz