티스토리 뷰

아직 사용해보진 않았지만 나중에 꽤 많이 사용될 거 같은 느낌을 받아서 한번 작성해보려 한다.

 

 

먼저 최상위 클래스 Object 에 대해 알아보자. 

 

 Object 클래스 는 모든 클래스의 최상위 클래스이다.

모든 클래스는 Object 클래스를 상속 받고 , 

그래서 Object 클래스의  몇몇 메서드를 재정의 할 수 있다.

그중에 자주 재정의 가 되는게 바로 ToString 이라 할 수 있겠다.

 

 

아래 클래스를 보겠다.

 

 

class Book{
	
	private String title;
	private String author;
	
	public Book(String title, String author) {
		this.title = title;
		this.author = author;
	}
	
	public String toString() {
		return title + "," + author;
	}
}

public class BookTest {

	public static void main(String[] args) {

		Book book = new Book("데미안", "헤르만 헤세");
		
		System.out.println(book);
	}
}

 

 

여기서 toString 을 보면 String 즉 Object 의 String 메서드를 Book 클래스에서 재정의 하였다.

 

 

자세히 말하자면 java.lang 패키지에 있는 String을 재정의 한 것 이다. 

 

java.lang.Object

 

재정의를 하지 않는다면 

	@Override
	public String toString() {
		// TODO Auto-generated method stub
		return super.toString();
	}

toString 의 형태는 이럴 것이다 .

 

이럴경우 book은 "데미안" "헤르만 헤세" 가 아니라  클래스 풀네임@메모리 주소 가 출력된다.

 

그래서 원하는 결과 값을 얻고 싶을 때 종종 toString 을  오버라이딩 해주면 좋을거 같다는 생각을 하였다.

'Java 기초공부' 카테고리의 다른 글

Java 기초 다지기 1편 - 클래스와 인스턴스  (0) 2022.07.12