Singleton 패턴은 클래스의 인스턴스화를 하나의 개체로 제한합니다. INSTANCE는 열거 인스턴스를 나타내는 public static 최종 필드입니다. EnumSingleton.INSTANCE를 사용하여 클래스의 인스턴스를 얻을 수 있지만 구현을 변경하려는 경우 getter에 캡슐화하는 것이 더 좋습니다.
Java에서 열거형을 싱글톤으로 사용할 수 있는 몇 가지 이유가 있습니다.
public enum Singleton { INSTANCE; private singleton() { } }
public enum EnumSingleton { <strong>INSTANCE</strong>; private String name; private int age; private void build(SingletonBuilder builder) { this.name = builder.name; this.age = builder.age; } public static EnumSingleton getSingleton() { <strong>// static getter</strong> return <strong>INSTANCE</strong>; } public void print() { System.out.println("Name: "+name + ", age: "+age); } public static class SingletonBuilder { private final String name; private int age; private SingletonBuilder() { name = null; } public SingletonBuilder(String name) { this.name = name; } public SingletonBuilder age(int age) { this.age = age; return this; } public void build() { EnumSingleton.INSTANCE.build(this); } } public static void main(String[] args) { new SingletonBuilder("Adithya").age(25).build(); EnumSingleton.getSingleton().print(); } }
Name: Adithya, age: 25
위 내용은 Java에서 싱글톤 열거형을 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!