반응형
public class Utility{
//기본 생성자를 막기 위해 private 사용
private Utility(){
//기본생성자를 통한 객체 생성 방지를 위해 throw 발생
throw new Exception();
}
}
명시적으로 만든 생성자가 private이기 때문에 클래스의 외부에서는 접근 불가능하다.
따라서 어떤 환경에서도 클래스가 인스턴스화 되는것을 막을 수 있다.
throw new Exception처럼 예외를 발생시켜 직관적으로 명시해준다.
반응형
'Effective Java' 카테고리의 다른 글
[아이템3] private 생성자나 열거 타입으로 싱글턴임을 보증하라 (0) | 2023.04.27 |
---|---|
[아이템2] 생성자에 매개변수가 많다면 빌더를 고려하라 (0) | 2023.04.27 |
[아이템1] 생성자 대신 정적 팩터리 메서드를 고려하라 (0) | 2023.04.27 |