Sponsored By
















 

 

싱글턴 패턴(Singleton Pattern)에 대해 보자.

 

 

 

ㅁ 아래와 같이 싱글턴 클래스를 만든다.

private으로 해놔서 객체로 생성시키지는 못하고 밑에 static 앞에 public이 생략되어 있다. 이곳에서 객체전단계의 작업까지 수행가능.

 

9번째 줄에서 싱글턴퍁 클래스의 겟싱글턴메소드를 정의한다.

만약 private static 에서 정했던 Singleton_Class_Instance 가 NULL값이면 새롭게 생성하고 리턴을 해서 위의 Singleton_Class_Instance에 적용시킨다.

 

밑에 geti() set(int i)는 getter/setter 정도로 보면 됨.

 

 

ㅁ 첫번째 클래스

싱글턴 패턴 형식의 singletonCla를 만들어주는데 객체가 아닌 위에 싱글턴패턴에서 만들었던 getSingleton()메소드를 사용한다.

FirstCla 가 구동되면 "1st Class" 를 화면에 나타나고 "i = FirstCla 에서 만든 singletonCla의 메소드인 geti()"를 나타냄.

그리고 i를 200으로 재정의한다.

그리고 나서 i를 다시 나타나게 한다.

 

예상 출력값: 1st Class

               i = 10

               i = 200

 

 

 

 

ㅁ 두번째 클래스

첫번째 클래스와 똑같이 나타나게 되는데, 한가지 다른점은 싱글턴클래스를 ' 공유 ' 하고 있기 때문에 첫번째 클래서 메소드에서 마지막에 i를 200으로 재정의 했기 때문에 두번째 클래스에서 출력 i 값이 200으로 예상된다.

 

 

ㅁ 메인클래스

클래스들과 메소드를 다 만들었으니까 메인클래스에서 객체를 생성한다.

FirstCla 타입의 firstcla 객체를 생성했고 SeondCla 타입의 secondCla 객체를 생성했다.


 

결과는 예상한 것과 마찬가지로 나오게 된다.

 

 



Sponsored By















+ Recent posts