JAVA/Effective Java

규칙10 toString은 항상 재정의하라

소농배 2018. 12. 19. 20:27
이펙티브 자바 Effective Java 2/E
국내도서
저자 : 조슈아 블로크(Joshua Bloch) / 이병준역
출판 : 인사이트 2014.09.01
상세보기

Object 클래스가 제공하는 toString() 메서드는 일반적으로 사용자가 보려는 형태가 아니다.
@ 기호와 16진수로 표현된 해시 코드가 붙은 문자열로 "PhoneNumber@163b91" 형태다.

가능하다면 객체 내의 중요 정보를 전부 담아 반환해야 한다.

toString()이 반환하는 문자열의 형식을 명시하건 그렇지 않건 간에, 어떤 의도인지는 문서에 분명하게 남겨야 한다.
=> 의도가 남아있지 않은 toString() 을 다른 프로그래머들이 마음대로 사용하게 된다면 차후에 변경이 어렵다. 

toString()이 반환하는 문자열에 포함 되는 정보들은 전부 프록래밍을 통해서 가져올 수 있도록 하라.
=> 접근자 메서드가 없다면 다른 프로그래머들이 toString()을 파싱하려 들 것이다.