728x90
toString() 은 Java개발을 하는 누구라도 한번쯤은 봤을법한 메서드 입니다.
toString()메서드는 Class의 최상의 부모인 Object의 기본 메서드 입니다.
Object.toString()메서드는 우리가 볼수 있는 적당한 문자열을 반환하는게 아니라
클래스이름@16진수로 표시한 해시코드를 문자열로 반환한다. toString의 일반 규약에 따르면 간결하면서 사람이 보기 쉬운 형태의 정보를 반환해야 한다.
toString()의 규약은 모든 하위 클래스에서 이 메서드를 재정의하라
고 한다. 실제로 개발시에도 toString()을 재정의하여 많이 사용한다.
toString()같은 경우는 재정의하면 훨신 보기 쉽고 디버깅 하기도 쉽습니다. toString()메서드는 객체를 print를 통해 출력하고나 연결연산자(+) , assert구문에 넘길때 자동으로 호출되어 출력한다.
실제 EffectiveJava에 서는 더많은 내용이 있지만 정리된 내용만 작성하도록 하겠습니다.
- 모든 구체 Class에서 Object의 toString 을 재정의하여 사용하라.
- 상위 클래스에서 이미 알맞게 정의하였다면 정의하지 않아도 된다.
- toString()은 객체에 대해 명확하고 유용한 정보를 읽기 좋은 형태로 반환해야한다.
728x90
반응형
'Java' 카테고리의 다른 글
[EffectiveJava] Item14 Comparable을 구현할지 고려하라 (0) | 2020.12.27 |
---|---|
[EffectiveJava] Item13 clone 재정의는 주의해서 진행하라. (0) | 2020.12.27 |
[EffectiveJava] Item11 equals를 제정의하려거든 hashCode도 재정의하라 (0) | 2020.12.21 |
[EffectiveJava] Item10 equals는 일반 규약을 지켜 재정의하라 (0) | 2020.12.16 |
[EffectiveJava] Item 9 try-finally 보다는 try-with-resources를 사용하라 (0) | 2020.12.12 |
댓글