싱글톤

하나의 객체(인스턴스)만을 생성하여 사용하는 패턴 (메모리 효율성)

싱글톤 패턴(Singleton pattern) | 👨🏻‍💻 Tech Interview

public class Dao {
	// 접근제한자가 private인 생성자
	private Dao() {
		System.out.println("Dao 기본생성자");
	}
	
	
	// Dao 클래스 안에 내부 클래스 (InnerClass) 생성
	private static class InnerClass {
		private static final Dao INSTANCE = new Dao();
	}
	
	// static은 메모리에 최초 한번만 할당되고 변하지 않음
	public static Dao getInstance() {
		// public 메소드의 리턴값으로 private 내부클래스 접근 가능
		return InnerClass.INSTANCE;
	}
	
	public void insert() {}
	public void delete() {}
	public void update() {}
	public void select() {}
}

내부클래스 (InnerClass) ⇒ 클래스 안에서 선언된 클래스

코딩교육 티씨피스쿨

내부클래스의 종류와 특징

  1. 인스턴스 클래스 (instance class)