[Effective Java] 10. toString은 항상 재정의하라.
1. 일반규약
보통 Object.toString()을 호출하면 아래와 같이 나온다.
PhoneNumber p = new PhoneNumber();
p.toString();
// 결과는.. "PhoneNumber@163b91" (클래스명 @ hashCode)
하지만 일반규약에 toString()은 아래와 같이 해야 한다고 되어있다.
- 사람이 읽기 쉽도록 간략하지만 유용한 정보를 제공해야 한다.
- 모든 하위 클래스는 이 메서드를 재정의함이 바람직하다.
2. Override 했을때의 장점
당연히 로그를 출력할때 좀 더 쾌적하게 사용할 수 있다.
객체 자체를 출력할때뿐 아니라 컬렉션에 들어있을때도 혜택을 볼 수 있는데 예를 들어 Map을 출력했을때 toString() 값을 보여준다.
TODO : 추가 정리
댓글남기기