반응형
toString 재정의를 하지 않은 경우
기본으로 제공되는 toString을 사용하게 될 경우 @ 기호와 16진수로 표현된 해시코드가 붙은 문자열이 반환된다.
이는 사용자가 원하는 정보가 아니므로
사용자는 해당 객체가 원하는 형태로 문자열을 반환할 수 있도록
재정의를 해놓으면
조금 더 유용하게 사용 할 수 있다.
일반적으로 toString 메서드를 재 정의하여 사용하는 경우에는 객체 내의 중요 정보를 전부 담아 반환해야 한다.
또한 toString를 재정의 하였을 경우에는
해당 내용에 대한 주석을 상세하게 기입해 놓아야 한다.
1 2 3 4 5 6 7 8 9 10 | /* * 모든 객체의 멤버 변수에 대한 데이터를 반환한다. * * a는 첫번재, b는 두번 째 값이다. */ @Override public String toString() { return "a : " + getA() + " b : " + getB(); } | cs |
출처 : 조슈아 블로크, 『 Effective Java 2/E』, 이병준 옮김, 인사이트(2014.9.1), 규칙10 인용.
반응형
'JAVA > Effective Java' 카테고리의 다른 글
모든 객체의 공통 메서드 - 규칙 12 Comparable 구현을 고려하라. (0) | 2018.05.29 |
---|---|
모든 객체의 공통 메서드 - 규칙 11 clone을 재정의할 때는 신중하라 (0) | 2018.05.29 |
모든 객체의 공통 메서드 - 규칙 9 equals를 재정의할 때는 반드시 hashCode도 재정의하라 (0) | 2018.05.29 |
모든 객체의 공통 메서드 - 규칙 8 equeals 재정의할 때는 일반 규악을 따르라 (0) | 2018.05.29 |
객체의 생성과 삭제 - 규칙 7 종료자 사용을 피하라 (0) | 2018.05.29 |