Java détermine si deux objets sont le même objet
L'adresse référencée est comparée à "==", et la valeur est comparée aux égaux. Ensuite, les propriétés des deux objets identiques dans les nouvelles sont les mêmes, et pourquoi ils ne sont pas les mêmes lors de la compilation? En effet, nous appelons la méthode égale de la classe parent, qui est l'objet. Ici, nous devons réécrire cette méthode égale.
classe publique test5 {public static void main (String [] args) {user muser1 = nouvel utilisateur ("zhangsan", "123456"); User muser = nouvel utilisateur ("Zhangsan", "123456"); System.out.println (muser == muser1); System.out.println (muser.equals (muser1)); }} classe utilisateur {string name = ""; String pwd = ""; @ Override // Réécrivez la méthode égaux de la classe parent public booléen equals (objet obj) {if (obj instanceof user) {user muser = (user) obj; if (muser.name.equals (name) && muser.pwd.equals (pwd)) {return true; }} return super.equals (obj); } utilisateur public (nom de chaîne, chaîne pwd) {super (); this.name = name; this.pwd = pwd; }}Merci d'avoir lu, j'espère que cela peut vous aider. Merci pour votre soutien à ce site!