도서
[도서] Effective Java - Item 4. 인스턴스화를 막으려거든 private 생성자를 사용하라.
땀두
2022. 4. 15. 11:09
이펙티브 자바 3판을 읽으면서 내용을 정리하는 포스트입니다. 혹시 틀린 부분이나 잘 못 설명한 부분이 있으면 댓글로 남겨주시면 수정하도록 하겠습니다.
Item 4. 인스턴스화를 막으려거든 private 생성자를 사용하라.
정적 메소드와 정적 필드만 담은 클래스는 객체지향적이지 않지만 나름의 쓰임은 있다.
java.lang.Math
,java.util.Arrays
와 같이 기본 타입 값이나 배열 관련 메소드를 모아둘 수 있다.java.util.Collections
와 같은 인터페이스 구현 객체를 모아두는 정적 메소드를 모아둘 수 있다.- final 클래스 관련 메소드들을 모아둘 수 있다.
하지만 이러한 경우 생성자를 명시하지 않으면 컴파일러에서 자동으로 기본 생성자를 생성하여 사용자가 구분이 어렵다.
- 이는 private 생성자를 추가하여 클래스의 인스턴스화를 막으면 된다.