Care este utilizarea metodei de suprascriere egală în Java?
Care este utilizarea metodei de suprascriere egală în Java?

Video: Care este utilizarea metodei de suprascriere egală în Java?

Video: Care este utilizarea metodei de suprascriere egală în Java?
Video: Overriding the Object equals Method - Java Override Example - Comparing Objects - APPFICIAL 2024, Noiembrie
Anonim

Suprascriere este egal și hashCode în Java

egal () metodă este folosit pentru a compara obiectele pentru egalitate în timp ce hashCode este folosit pentru a genera un cod întreg corespunzător acelui obiect

De aici, care este utilizarea metodei equals în Java?

The egal () metodă compară două obiecte pentru egalitate și returnează adevărat dacă sunt egal . The egal () metodă furnizate în clasa Object utilizări operatorul de identitate (==) pentru a determina dacă două obiecte sunt egal . Pentru tipurile de date primitive, aceasta oferă rezultatul corect.

În plus, cum suprascrieți metoda equals în Java? În partea de mai sus a clasei de cod, Person are o metodă equals() suprascrisă, care a luat următoarea abordare pas cu pas:

  1. Dacă referința la acest obiect este aceeași cu referința la obiectul argument, returnează true.
  2. Dacă argumentul este nul, returnează false.
  3. Dacă obiectele nu sunt din aceeași clasă, returnați false.

În consecință, de ce trebuie să suprascriem metoda equals în Java?

Clasa String suprascrie cel metoda egală a moștenit din clasa Object și a implementat logica pentru a compara cele două obiecte String caracter cu caracter. Motivul pentru metoda egală în clasa Object, egalitatea de referință se datorează faptului că nu știe cum să facă altceva.

Care este utilizarea metodei hashCode și equals în Java?

dacă o clasă trece peste egal , trebuie suprascrie hashCode . când sunt amândoi depășit , egal și hashCode trebuie sa utilizare același set de câmpuri. dacă două obiecte sunt egal , apoi lor hashCode valorile trebuie să fie egal de asemenea. dacă obiectul este imuabil, atunci hashCode este un candidat pentru memorarea în cache și inițializarea leneșă.

Recomandat: