シングルトンパターンを実装することで、クラスをシングルトンにすることができます。現在、シングルトンクラスは基本的な要件です。
JVM が実行時に Singleton オブジェクトの作成を単独で処理しないのはなぜですか?
「Singleton」のようなマーカー インターフェイスを持ち、実行時に JVM によって一度オブジェクト インスタンスを作成することによって。とにかく、クラスが他のクラスを拡張していない場合、Javaコンパイラは「拡張オブジェクト」を追加します。シングルトンの場合にも同様のアプローチを適用できます。これにより、Singleton パターンのさまざまな実装に関する多くの時間と開発作業と議論が節約されます。
1) 同期された getInstance()
2) メソッド全体を同期させるのではなく、getInstance() 内の同期ブロック
3) 揮発性メンバーとして singleInstance を使用するオプション 2
これにより、複数のクラスでシングルトン パターンを実装する必要がある場合に、多くの時間と重複する労力を節約できます (渡されたクラスのシングルトン インスタンスを返す SingletonPatternFactory クラスは考慮されません)。