Wat is het nut van de methode van overschrijven is gelijk aan in Java?
Wat is het nut van de methode van overschrijven is gelijk aan in Java?

Video: Wat is het nut van de methode van overschrijven is gelijk aan in Java?

Video: Wat is het nut van de methode van overschrijven is gelijk aan in Java?
Video: Overriding the Object equals Method - Java Override Example - Comparing Objects - APPFICIAL 2024, April
Anonim

Overschrijven is gelijk aan en hashCode in Java

gelijk aan () methode is gebruikt om objecten te vergelijken voor gelijkheid terwijl hashCode is gebruikt om een integere code te genereren die overeenkomt met dat object

Hiervan, wat is het gebruik van de equals-methode in Java?

De gelijk aan () methode vergelijkt twee objecten voor gelijkheid en retourneert waar als ze zijn Gelijk . De gelijk aan () methode geleverd in de klasse Object toepassingen de identiteitsoperator (==) om te bepalen of twee objecten zijn Gelijk . Voor primitieve gegevenstypen geeft dit het juiste resultaat.

Bovendien, hoe overschrijf je de equals-methode in Java? In het bovenstaande stuk codeklasse heeft Persoon een overschreven equals()-methode, die de volgende stapsgewijze aanpak volgde:

  1. Als de verwijzing naar dit object hetzelfde is als de verwijzing naar het argumentobject, retourneert u true.
  2. Als het argument null is, retourneert u false.
  3. Als de objecten niet van dezelfde klasse zijn, retourneert u false.

Dienovereenkomstig, waarom moeten we de equals-methode in Java overschrijven?

De String-klasse overschrijft de is gelijk aan methode het erfde van de klasse Object en implementeerde logica om de twee String-objecten teken voor teken te vergelijken. De reden dat de is gelijk aan methode in de Object-klasse doet verwijzingsgelijkheid omdat het niet weet hoe het iets anders moet doen.

Wat is het nut van het negeren van hashCode en is gelijk aan de methode in Java?

als een klasse overschrijft gelijk aan , het moet hashCode overschrijven . als ze allebei zijn overschreven , gelijk aan en hashCode moeten gebruik maken van dezelfde reeks velden. als twee objecten zijn Gelijk , dan hun hashCode waarden moeten zijn Gelijk ook. als het object onveranderlijk is, dan hashCode is een kandidaat voor caching en luie initialisatie.

Aanbevolen: