반응형
16번에서 정의한 것처럼 계승 (이하 상속)을 받을 경우 문제를 야기할 수 있다.
그렇기에 이를 예방하기 위해서 문서를 잘 갖추고 있어야 하는데
문서를 갖춘다는 것은 어떤 의미일까?
이는 재정의 가능 메서드를 내부적으로 어떻게 사용하는지(self-use)반드시 남기라는 것이다.
-> 어떤 재정의 가능 메서드를 어떤 순서로 호출하는지, 그리고 호출결과가 추후 어떤 영향을 미치는지 문서로 남기라는 의미이다.
여러 문제를 야기할 수 있기에, 계승에 맞도록 설계하고 문서화하지 않은 클래스에 대한 하위 클래스는 만들지 않아야 한다.
출처 : 조슈아 블로크, 『 Effective Java 2/E』, 이병준 옮김, 인사이트(2014.9.1), 규칙17 인용.
반응형
'JAVA > Effective Java' 카테고리의 다른 글
클래스와 인터페이스 - 규칙 19 인터페이스는 자료형을 정의할 때만 사용하라. (0) | 2018.05.29 |
---|---|
클래스와 인터페이스 - 규칙 18 추상 클래스 대신 인터페이스를 사용하라. (0) | 2018.05.29 |
클래스와 인터페이스 - 규칙 16 계승하는 대신 구성하라. (0) | 2018.05.29 |
클래스와 인터페이스 - 규칙 15 변경 가능성을 최소화하라 (0) | 2018.05.29 |
클래스와 인터페이스 - 규칙 14 public 클래스 안에는 public 필드를 두지 말고 접근자 메서드를 사용하라 (0) | 2018.05.29 |