책/이펙티브 자바 3e
item4) 인스턴스화를 막으려거든 private 생성자를 사용하라
jhg0406
2022. 2. 24. 00:04
정적 메서드와 정적 필드만을 담은 클래스를 만들고 싶을 때가 있음
이럴땐 private 생성자를 추가하면 클래스의 인스턴스화를 막을 수 있음
//기본 생성자가 만들어지는 것을 막음(인스턴스화 방지용)
private CLASS_NAME() {
throw new AssertionError();
}
혹시 클래스 내부에서 생성자가 호출 될 수 있으니 Assertion Error를 던지는 것도 좋은 방법
생성자가 존재하는데 호출할 순 없는것이 직관적이지 않으니 주석을 다는게 좋음