Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

equals implementacija

[es] :: Java :: equals implementacija

[ Pregleda: 1728 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

bane

Član broj: 449
Poruke: 230
31.223.139.*



Profil

icon equals implementacija31.10.2018. u 16:55 - pre 72 meseci
@Override
public boolean equals(Object obj) {

if(this == obj)
return true;
if(obj == null) {
return false;
}
if(getClass() != obj.getClass())
return false;
Car other = (Car) obj;
if(!manufacturer.equals(other.manufacturer))
return false;
if(!engine.equals(other.engine))
return false;
if(!color.equals(other.color))
return false;

return true;

}
Ono što mi nije jasno:

if(getClass() != obj.getClass())
return false;

A zatim Car other = (Car) obj;


Zašto ako su upitanju iste klase, imamo casting?

1000 zasto 1000 zato
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
109.72.51.23



+1064 Profil

icon Re: equals implementacija31.10.2018. u 17:09 - pre 72 meseci
Zato sto Java nema double dispatch pa drugi parametar biva Object.
 
Odgovor na temu

bane

Član broj: 449
Poruke: 230
31.223.139.*



Profil

icon Re: equals implementacija31.10.2018. u 19:57 - pre 72 meseci
OK, mislim da sam razumio, pošto je potrebno pozvati instance variable koje se ne nalaze u Object klasi, radi se casting.

Hvala!
1000 zasto 1000 zato
 
Odgovor na temu

[es] :: Java :: equals implementacija

[ Pregleda: 1728 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.