Effective Java 10. toString 메소드는 항상 오버라이드 하자

Jae·2024년 4월 7일
0

Effective Java

목록 보기
11/11

Effective Java ed.2를 읽고 이해한 내용을 정리하였습니다.

toString메소드를 구현해야하는 이유

java.lang.Object 메소드는 toString 메소드를 구현하고 있고, java API 문서에서는 toString 메소드는 간결해야하며 사람이 읽기 쉬운 형태의 정보 표현이어야한다고 한다.
그치만 확인해보면

간결하다 못해 알아보기 힘든 정도.
그리고 그 뒤에 모든 서브 클래스들은 이 메소드를 오버라이드 할 것을 권한다고 한다.
간단하게 변수 표현하는 거로 오버라이딩만 해도 원하는 값들을 쉽게 알 수 있다.

toString메소드를 구현할 때 중요한 사항

바로, 반환 값의 형식을 API에서 상세하게 규정할지에 대한 여부

장점

  • 객체의 표현이 표준화되고 사람들이 이해하기 쉽다.
  • 표준화를 통해 다양한 형태로의 입출력이 가능하며 영속적인 객체 내에서 사용될 수 있다.

단점

  • 형식을 지켜야하기 때문에 신경쓸 부분이 많아진다.
  • 변동이 생겼을 때 다 바꿔야하기 때문에 유연성이 떨어질 수 있다.

주의사항

반드시 문서화하여 명쾌하게 이해할 수 있도록 할 것.

아래처럼 오버라이딩시 데이터의 표현값을 변경하되, 주석을 남김으로써 사용시 분명하게 이해하는데 도움을 줄 수 있다.

참고

Effective Java ed.2

0개의 댓글