[자바 패턴] 싱글톤패턴의 이해(java singleton)
IT/JAVA
2018. 4. 17. 00:04
728x90
1. 싱글톤 인스턴스를 생성한다.
public class DbInfo { // 싱글톤 패턴은 하나의 인스턴스 생성만 구현하는것을 말한다. static private DbInfo instance; private DbInfo(){ //생성자를 private를 만들어 // 외부에서 생성하지 못하도록 한다. } //외부에서 DbInfo 인스턴스를 사용할수 있도록 public으로 생성한다. public static DbInfo getInstance(){ //instance가 null이라면 new 생성한다. if(instance == null){ instance = new DbInfo(); } //이후 외부에서 getInstance()을 호출한다면 null이 아니므로 하나의 인스턴스만이 리턴된다. return instance; } }
2. 외부에서 호출해보자!
public class Main { public static void main(String[] args) { DbInfo info1 = DbInfo.getInstance(); DbInfo info2 = DbInfo.getInstance(); if(info1 == info2){ System.out.println("둘의 객체는 같다"); System.out.println("info1 : "+info1); System.out.println("info2 : "+info2); }else{ System.out.println("둘의 객체는 같지않다"); System.out.println("info1 : "+info1); System.out.println("info2 : "+info2); } } }
3. 결과값 출력.
둘의 객체는 같다
info1 : com.tt.pattern.Singleton.DbInfo@15db9742
info2 : com.tt.pattern.Singleton.DbInfo@15db9742
둘의 주소값이 동일한 것을 알수 있습니다.
감사합니다.
지난 포스트가 궁금하시다면
↓↓↓ 아래 링크를 클릭해주세요. ↓↓↓↓
다음 포스트가 궁금하시다면
↓↓↓ 아래 링크를 클릭해주세요. ↓↓↓↓
'공감'버튼 및 '좋아요'는 글쓴이에게 큰 힘이 됩니다!
'IT > JAVA' 카테고리의 다른 글
[자바] java method timeout - 메서드 타임 아웃 걸기 (0) | 2018.04.17 |
---|---|
[자바] 깊은 복사와 얕은 복사의 이해 - java 데이터 복사 (1) | 2018.04.17 |
[JAVA] 자바로 csv파일 만들기(라이브러리 X) (3) | 2018.01.26 |
class 및 jar 파일이 디컴파일러가 안될때(리눅스에서 사용 방법) (0) | 2018.01.06 |
httpClient를 통하여 서버 통신후 response String으로 받기 (0) | 2017.11.03 |