반응형
때로는 정적 필드나 메소드로만 구성된 클래스를 설계할 때가 있다.
대표적 예로는 java.lang.Math나 java.util.Arrays
이런 클래스는 객체를 생성할 목적으로 만들어 진 것이 아니다.
때문에 객체 생성을 막을 필요가 있다.
추상클래스로 만들어놔도 소용이없다. 하위클래스에서 상속 할 시
객체생성이 가능해지기 때문이다.
가장 확실한 방법이 생성자를 private 로 만드는 것이다.
private NutrtionFacts{
throw new AssertionError();
}
이런 방식으로 생성자를 설정해두면
클래스 객체 생성을 봉쇄할 수 있다.
반응형
'프로그래밍 > Java' 카테고리의 다른 글
이펙티브 자바 규칙 5 - 불필요한 객체 만들지 않기 (0) | 2018.01.28 |
---|---|
이펙티브 자바 규칙 3 - 싱글톤 (0) | 2018.01.27 |
이펙티브 자바 규칙 2 - Builder 패턴 (0) | 2018.01.24 |