728x90
반응형
class Singleton {
// LazyHolder Singleton pattern
private Singleton(){};
private static class LazyHolder{
public static final Singleton instance = new Singleton();
}
// getInstance()를 호출했을때 LazyHolder 클래스가 로딩되면서 생성
// 장점 : 객체가 필요한 시점에서 초기화가 진행된다.
public static Singleton getInstance(){
return LazyHolder.instance;
}
}
- 객체를 오직 하나만 생성하여 활용하는것을 싱글턴이라고 한다.
- 싱글턴을 만들때 반드시 고려해야하는 사항은 무상태 객체이다.
참고 자료
Joshua Bloch, 『Effective Java 3/E』, 개앞맵시 옮김, 프로그래밍인사이트(2018)
http://www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&mallGb=KOR&barcode=9788966262281&orderClick=LEa&Kc=
728x90
반응형
'Java' 카테고리의 다른 글
[Effective Java] 아이템 7. 다 쓴 객체 참조를 해제하라. (0) | 2022.05.24 |
---|---|
[Effective Java] 아이템 5. 자원을 직접 명시하지 말고 의존 객체 주입을 사용하라. (0) | 2022.05.24 |
[Effective Java] 아이템 2. 생성자에 매개변수가 많다면 빌더를 고려하라. (0) | 2022.05.24 |
[Effective Java] 아이템 1. 생성자 대신 정적 팩터리 메서드를 고려하라. (0) | 2022.05.24 |
[Java] Comparator 와 Comparable (0) | 2021.01.23 |