Java @Override Bilješka

1. Pregled

U ovom ćemo brzom vodiču pogledati kako se koristi @Preuzmi bilješka.

2. @Preuzmi Bilješka

U podrazredu možemo nadjačati ili preopteretiti metode instance. Nadjačavanje ukazuje da podrazred zamjenjuje naslijeđeno ponašanje. Preopterećenje je kada podrazred dodaje novo ponašanje.

Ponekad ćemo se preopteretiti slučajno kad smo zapravo namjeravali nadjačati. Na Javi je lako napraviti ovu pogrešku:

javna klasa Stroj {public boolean equals (Machine obj) {return true; } @Test public void whenTwoDifferentMachines_thenReturnTrue () {Prvo objekt = novi stroj (); Objekt drugi = novi stroj (); assertTrue (first.equals (second)); }}

Iznenađujuće, gornji test ne uspijeva. To je zato što ovo jednako metoda je preopterećenje Objekt # jednak, ne poništavajući ga.

Možemo koristiti @Preuzmi napomena o naslijeđenim metodama da nas zaštite od ove pogreške.

U ovom primjeru možemo dodati @Preuzmi napomena iznad jednako metoda:

@Override public boolean equals (Machine obj) {return true; }

U ovom trenutku, sastavljač će iznijeti pogrešku, obavještavajući nas da ne prevladavamo jednako kao što mislimo.

Tada možemo ispraviti svoju pogrešku:

@Override public boolean equals (Object obj) {return true; }

Zbog lakoće slučajnog preopterećenja, uobičajena je preporuka za korištenje @Preuzmi napomena o svim naslijeđenim metodama.

3. Zaključak

U ovom smo priručniku vidjeli kako napomena @Override radi na Javi.

Cjeloviti izvorni kod za primjere možete pronaći na GitHubu.