Java | Singleton Pattern

DoItDev·2021년 8월 1일
0
post-thumbnail

들어가기 앞서서

객체란 무엇인가

객체란 속성과 기능을 갖춘 것
클래스란 속성과 기능을 정의한 것
인스턴스란 속성과 기능을 가진 것 중에 실체 하는 것

singleton pattern

하나만 생성(인스턴스)해야할 객체를 위한 패턴

singleton 구현

개발중인 시스템에서 객체에 접근할 수 있는 클래스를 만들자!

public class SystemObject {

    static private SystemObject instance;

    private int count;

    private SystemObject() {
    }

    public static SystemObject getInstance() {
        // null 이면 객체 생성
        if (null == instance) {
            instance = new SystemObject();
        }
        return instance;
    }

    public int getCount() {
        return count;
    }

    public void setCount(int count) {
        this.count = count;
    }

}

main class 를 만들어서 직접 테스트를 해보았다.

public class Main {

    public static void main(String[] args) {
        SystemObject o1 = SystemObject.getInstance();
        o1.setCount(5);
        System.out.println("count :"+o1.getCount());
        SystemObject o2 = SystemObject.getInstance();
        System.out.println("count :"+o2.getCount());


        System.out.println(o1);
        System.out.println(o2);
    }

}
스크린샷 2021-08-01 오후 8 32 33

직접 객체를 디버그나 로그로 보았을때 두가지다 같은 객체를 참조 하고 있었다.

about

[자바 디자인 패턴 이해] 5강 싱글톤 패턴(Singleton Pattern)

profile
Back-End Engineer

0개의 댓글