[Java] Singleton Pattern

이의찬·2022년 8월 25일
0

Java

목록 보기
2/3

Singleton pattern

싱글톤 패턴은 인스턴스를 단 하나만 생성하는 디자인 패턴이다.
실제 프로그래밍에서는 TCP Socket 통신에서 서버와 연결된 connect 객체에 주로 사용한다.

public class SocketClient {

	// 2. 클래스 내부에 static으로 유일한 인스턴스 생성
	private static SocketClient socketClient = null;
    
    // 1. private 생성자 만들기
    private SocketClient (){
    	// private 로 기본 생성자를 막음
    }
    
    
    // 3. 외부에서 참조할 수 있는 public 메서드 만들기
    public static SocketClient getInstance() {
    	if (socketClient == null) {
        	socketClient = new SocketClient();
        }
        return socketClient;
    }
    
    public void connet() {
    	System.out.println("connect");
    }
}

기본 생성자로 생성하지 못하게 하고 getInstance() 로 할당 받게 설계한다. 다른 클래스A와 클래스B에서 SocketClient.getInstance()로 할당하면 각 클래스에서 완전히 같은 인스턴스를 가질 수 있다.

0개의 댓글