Java/개념
JAVA package - java.lang패키지/Object클래스/equals메서드
정복잉
2020. 5. 10. 07:25
반응형
※개념정리
Object클래스
1) java.lang 패키기에 포함되는 클래스
2) 모든 클래스의 상위 클래스 (자바 클래스 계층구조에서 상위)
2.equals( )메서드
=객체의 값을 비교하여 true/false 반환하는 메서드
equals( )메서드 구조
if(참조변수1.equals(참조변수2))
실행할 문장
else
실행할 문장
equals( )와 ==은 다르다.
객체의 값을 비교할때 ==의 경우 내용이 같아도 참조변수가 다르면 주소값이 다르기 때문에
다르다는 결과값을 도출한다.
그에 비해 equals는 내용이 같다면, 참조변수가 달라도 같다라는 결과값을 도출한다.
equals( )메서드의 재정의
class Car {
private String model; //필드
public Car(String model) {this.model=model;} //생성자, 객체선언시 모델의 값도 선언해야 함
public boolean equals(Object obj) { //'equals' 이름의 메소드 생성, 참조변수의 타입은 상위클래스
if (obj instanceof Car) //Car클래스에 obj가 속해 있다면
return model.equals(((Car) obj).model);
//equals()를 재정의 한다. String의 equals( )를 호출하여서 문자열이 동일한지 검사
else
return false;
}