Kakšna je uporaba metode preglasitve enakov v Javi?
Kakšna je uporaba metode preglasitve enakov v Javi?

Video: Kakšna je uporaba metode preglasitve enakov v Javi?

Video: Kakšna je uporaba metode preglasitve enakov v Javi?
Video: Запор без стакана воды. Что скрывает. О чем предупредит 2024, April
Anonim

Preglasitev enako in hashCode v Java

enaka () metoda je uporabljeno za primerjavo predmetov za enakost, medtem ko je hashCode uporabljeno za generiranje cele kode, ki ustreza temu objektu

Kakšna je uporaba metode enakov v Javi?

The enaka () metoda primerja dva predmeta za enakost in vrne true, če sta enako . The enaka () metoda na voljo v razredu Object uporablja operator identitete (==), da ugotovi, ali sta dva objekta enako . Za primitivne tipe podatkov to daje pravilen rezultat.

Poleg tega, kako preglasite metodo equals v Javi? V zgornjem delu kode ima razred Person preglašeno metodo equals(), ki je uporabila naslednji pristop po korakih:

  1. Če je sklic na ta objekt enak sklici na objekt argumenta, vrnite true.
  2. Če je argument nič, vrnite false.
  3. Če predmeti niso iz istega razreda, vrnite false.

V skladu s tem, zakaj moramo preglasiti metodo equals v Javi?

Razred String preglasi the metoda enako podedoval je od razreda Object in implementiral logiko za primerjavo dveh objektov String znak za znakom. Razlog za metoda enako v razredu Object se sklicuje na enakost, ker ne zna narediti ničesar drugega.

Kakšna je uporaba preglasitve metode hashCode in equals v Javi?

če razred preglasi enaka , mora preglasi hashCode . ko sta oba preglasil , enaka in hashCode mora uporaba enak niz polj. če sta dva predmeta enako , nato njihovo hashCode vrednosti morajo biti enako tudi. če je predmet nespremenljiv, potem hashCode je kandidat za predpomnjenje in leno inicializacijo.

Priporočena: