파닥이

딱한번 생성되어야 하는 인스턴스 생성 본문

IT/Java

딱한번 생성되어야 하는 인스턴스 생성

알라이또 2017. 1. 21. 11:50
반응형
package study;
//반드시 하나의 인스턴스만 생성해야 하는 클래스
class SimpleNumber 
{
int num = 0;
private SimpleNumber() {}
public void addNum(int n) { num+=n; }
public void showNum() { System.out.println(num);}
private static SimpleNumber snInst = null;
public static SimpleNumber getInstance() {
if(snInst == null
snInst = new SimpleNumber();
return snInst;
}
}
public class OnlyOneInstance {
public static void main(String[] args) {
SimpleNumber num1 = SimpleNumber.getInstance();
num1.addNum(20);
SimpleNumber num2 = SimpleNumber.getInstance();
num2.addNum(30);
num1.showNum();
num2.showNum();
}
}

<실행결과>
50
50


생성자를 private로 선언하여 static메소드로 접근하여 판별후 생성
Comments