728x90
728x90
java.lang 패키지
- import 예약어를 사용해서 가져오지 않아도 자동으로 import되는 패키지
ex) String, System, Object, Exception, ...
Object 클래스
- 모든 클래스의 최상위 클래스
→ 모든 클래스는 Object 클래스에서 상속받음 (extends 키워드 생략)
→ Object 클래스의 메서드 중 일부를 재정의해서 사용할 수 있음
# toString() 메서드
- (기본) 객체의 정보를 String 타입으로 바꿔 사용할 때 쓰임
# equals() 메서드
- (기본) 두 객체의 주소 값이 동일하면 true를 반환함
- (재정의) 주소 값이 다르더라도 두 객체가 논리적으로 동일하면 true를 반환함
ex) String 객체에 equals() 메서드를 사용할 경우, 두 문자열의 내용이 같으면 true
// equals 재정의 예시 //
@Override
public boolean equals(Object obj) {
// 만약 외부에서 주입된 값의 title과 author이 같다면 true 리턴
// 방어적 코드 작성 : Book이라는 데이터 타입만 확인
if (obj instanceof Book) {
Book targetBook = (Book) obj; // 다운 캐스팅
if (targetBook.title == this.title && targetBook.author == this.author) {
System.out.println("같은 책입니다.");
return true;
}
}
return false;
}
320x100
반응형
'Java > Base' 카테고리의 다른 글
[Java] 내부 클래스와 익명 클래스 (1) | 2023.02.16 |
---|---|
[Java] 오류와 예외 처리 (0) | 2023.02.15 |
[Java] 인터페이스 - DAO 구현 (0) | 2023.02.13 |
[Java] 인터페이스와 default 메서드 (0) | 2023.02.13 |
[Java] String 클래스의 메서드 (0) | 2023.02.13 |