본문 바로가기
CS지식

[cs기초/ 디자인패턴] 싱글톤 패턴에 대해 알아보자

by Alkaloid 2022. 2. 23.
반응형

스프링을 공부하다 디자인패턴이라는 용어가 나왔습니다.

그래서 제가 공부했던 디자인 패턴에 대해 설명해 드리려고 합니다.

오늘 배워볼 디자인패턴은 싱글톤이라고 하는 용어를 배워보도록 할께요.

싱글톤은 처음 객체가 생성되면 메모리에 할당을 하고, 그 메모리에서 인스턴스를 계속해서 생성하는 디자인 패턴입니다.

쉽게 정수기를 생각하시면 편해요!

 

정수기 하나를 놓고 여러사람이 물을 먹죠? 객체가 생성될때마다 할당하는것이 아닌, 기존에 생성된 객체가 있다면 그 객체가 할당 받은 메모리를 재활용하는것입니다.

그럼 코드로 살펴 보도록 할께요

 

두개의 파일을 만들어 보겠습니다.

이름은 아무거나 하셔도 상관없어요!

오 딱보니 main파일이네요! 

main을 보시면 객체를 두번 생성합니다.

 

다음파일은?

그냥 하나의 클래스 파일입니다.

메인에서 객체를 생성하면 여기있는 메소드를 실행시킬것입니다.

 

그럼 객체가 메모리를 공유한다는데 어떻게 알까요? main파일을 보시면 if문에 걸려있습니다.

그러니 결과는?

obj1과 obj2가 따로 객체를 생성했지만, 동일한 메모리를 공유하므로  연습1 이 출려되었습니다.

 

디자인패턴의 싱글톤은 객체생성의 부담을 주지않고 재활용을 위한 디자인패턴!

반응형