Java는 두 객체가 동일한 객체인지 여부를 결정합니다
참조 주소는 "=="와 비교되고 값은 평등과 비교됩니다. 그러면 새로운 두 개의 동일한 객체의 속성이 동일하며 컴파일 할 때 왜 동일하지 않습니까? 이것은 우리가 대상인 부모 클래스의 평등 방법을 호출하기 때문입니다. 여기서는이 동등한 방법을 다시 작성해야합니다.
public class test5 {public static void main (String [] args) {user muser1 = new user ( "zhangsan", "123456"); user muser = 새 사용자 ( "zhangsan", "123456"); System.out.println (muser == muser1); System.out.println (muser.equals (muser1)); }} class user {string name = ""; 문자열 pwd = ""; @override // 상위 클래스의 평등 메소드를 다시 작성하십시오 public boolean equals (object obj) {if (obj instanceof user) {user muser = (user) obj; if (muser.name.equals (name) && muser.pwd.equals (pwd)) {return true; }} return super.equals (obj); } 공개 사용자 (문자열 이름, 문자열 pwd) {super (); this.name = 이름; this.pwd = pwd; }}읽어 주셔서 감사합니다. 도움이되기를 바랍니다. 이 사이트를 지원 해주셔서 감사합니다!