Java で Enum を使用したシングルトンの作成: 相違点と考慮事項
オブジェクト指向プログラミングでは、シングルトンは 1 つのみの存在を保証するクラスです。実例。 Java では、列挙型を使用してシングルトンを作成できます。これを実現するにはさまざまなアプローチがありますが、次の 2 つの注目すべきバリエーションがあります。
オプション 1: インスタンス メソッド
<code class="java">public enum Elvis { INSTANCE; private int age; public int getAge() { return age; } }</code>
このアプローチでは、プライベート インスタンス変数 (age) が作成されます。そしてそれにアクセスするためのゲッター メソッド (getAge) を公開します。シングルトン アクセスは Elvis.INSTANCE を通じて実現されます。
オプション 2: 静的メソッド
<code class="java">public enum Elvis { INSTANCE; private int age; public static int getAge() { return INSTANCE.age; } }</code>
このバリエーションでは、age 変数は enum 内でプライベートのままですが、静的メソッド (getAge) を通じてアクセスします。シングルトンへのアクセスは、Elvis.getAge() を介して行われます。
相違点と考慮事項
インスタンス メソッド:
静的メソッド:
バインディングに関する考慮事項:
最適性:
以上がシングルトンのインスタンスと静的メソッド: Java での Enum ベースの実装にはどちらが理想的ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。