Java/design pattern Singleton Pattern 우혁이 아빠 2012. 7. 20. 13:20 @Test public void test_001() { System.out.println("Start."); Singleton obj1 = Singleton.getInstance(); Singleton obj2 = Singleton.getInstance(); if (obj1 == obj2) { System.out.println("obj1과 obj2는 같은 인스턴스입니다."); } else { System.out.println("obj1과 obj2는 다른 인스턴스입니다."); } System.out.println("End."); } @Test public void test_002() { System.out.println("Start."); Singleton2 obj1 = Singleton2.getInstance(); Singleton2 obj2 = Singleton2.getInstance(); if (obj1 == obj2) { System.out.println("obj1과 obj2는 같은 인스턴스입니다."); } else { System.out.println("obj1과 obj2는 다른 인스턴스입니다."); } System.out.println("End."); } package com.tistory.tazz009.pattern; public class Singleton { private static Singleton singleton = new Singleton(); private Singleton() { System.out.println("인스턴스를 생성했습니다."); } public static Singleton getInstance() { return singleton; } } package com.tistory.tazz009.pattern; public class Singleton2 { private static Singleton2 singleton = null; private Singleton2 () { System.out.println("인스턴스를 생성했습니다."); } public static synchronized Singleton2 getInstance() { if (singleton == null) { singleton = new Singleton2(); } return singleton; } } 저작자표시