Java에서 Enum을 사용하여 싱글톤 만들기: 차이점과 고려 사항
객체 지향 프로그래밍에서 싱글톤은 하나만 존재하도록 보장하는 클래스입니다. 사례. Java에서는 열거형을 사용하여 싱글톤을 생성할 수 있습니다. 이를 달성하기 위한 다양한 접근 방식이 있지만 두 가지 주목할만한 변형은 다음과 같습니다.
옵션 1: 인스턴스 방법
<code class="java">public enum Elvis { INSTANCE; private int age; public int getAge() { return age; } }</code>
이 접근 방식은 개인 인스턴스 변수(age)를 생성합니다. 그리고 이에 액세스하기 위해 getter 메소드(getAge)를 노출합니다. 싱글톤 액세스는 Elvis.INSTANCE를 통해 이루어집니다.
옵션 2: 정적 메서드
<code class="java">public enum Elvis { INSTANCE; private int age; public static int getAge() { return INSTANCE.age; } }</code>
이 변형에서 age 변수는 여전히 열거형 내에서 비공개이지만 정적 메소드(getAge)를 통해 액세스됩니다. 싱글톤에 대한 액세스는 Elvis.getAge()를 통해 수행됩니다.
차이점 및 고려 사항
인스턴스 메서드:
정적 메서드:
바인딩 고려 사항:
최적성:
위 내용은 싱글톤을 위한 인스턴스 및 정적 방법: Java의 Enum 기반 구현에 이상적인 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!