logo

Preglasi enako metodo v Javi

Metoda equals() razreda objektov, ki sprejme objekt in ga primerja s trenutnim objektom, se uporablja za primerjavo dveh objektov. Če sta bila sklicevanja na ta dva objekta enaka, vrne metoda true; sicer pa ne.

Primer

jpa proti hibernaciji

Razred Employee v naslednjem primeru ima dve spremenljivki: ime in starost ter parametrizirano funkcijo Object() { [izvorna koda] }.

Z uporabo metode equals() ustvarimo dva objekta iz glavne metode tako, da podamo enake podatke in primerjamo rezultate.

Ta programska oprema vrne false, ker metoda equals() razreda Object vrne true le, če so sklicevanja na objekte enaka.

Primer kode za preglasitev metode equals:

EqualsExpl.java

spati v js
 import java.util.Scanner; class Student { private String n; private int a; Student(String n, int a){ this.n = n; this.a = a; } } public class EqualsExpl { public static void main(String[] args) { Student s1 = new Student('Sonoo', 19); Student s2 = new Student('Jaiswal', 19); // Comparing the two instances boolean bool = s1.equals(s2); System.out.println(bool); } } 

Izhod:

Preglasi enako metodo v Javi

Preglasitev metode equals().

Lahko razvijete svojo lastno različico metode equals, saj je Object res nadrazred za vse razrede v Javi.

Primer kode:

EqualsExpl1.java

kako velik je zaslon mojega monitorja
 class Student { private String n; private int a; Student(String n, int a){ this.n = n; this.a = a; } public boolean equals(Object o) { if (o == this) { return true; } if (!(o instanceof Student)) { return false; } Student s = (Student) o; return n.equals(s.n)&& Integer.compare(a, s.a) == 0; } } public class EqualsExpl1 { public static void main(String[] args) { Student s1 = new Student('Sonoo', 19); Student s2 = new Student('Jaiswal', 19); //Comparing the two instances boolean bool = s1.equals(s2); System.out.println(bool); } } 

Izhod:

Preglasi enako metodo v Javi