Programming/JAVA
Singleton 패턴
dev?
2022. 5. 6. 10:24
반응형
Singleton 패턴
어떤 클래스가 최초 한 번만 메모리를 할당하고(Static) 그 메모리에 객체를 만들어 사용하는 디자인 패턴이다.
사용 이유
- 한 번의 객체 생성으로 재사용이 가능하여 메모리 낭비를 방지할 수 있다.
- 싱글톤으로 생성된 객체는 한번 생성으로 다른 객체와 공유 가능하다. (전역성)
[ 사용 예제 ]
class Exam{
/* singleton 패턴 시작 */
private static Exam instance = null;
public static Exam getInstance(){
if(instance == null)
instance = new Exam();
return instance;
}
/* - new로 객체 생성 불가
- 디폴트 생성자가 private 이기 때문에, 클래스 외부에서 생성사 사용 불가 */
pirvate Exam(){}
/* singleton 패턴 끝*/
// 메소드
int method(int x, int y){
return x + y;
}
}
/* 클래스 호출 */
Exam exam = Exam.getInstance();
exam.method(1, 2);
Exam.getInstance().method(1,2);
https://elfinlas.github.io/2019/09/23/java-singleton/
반응형