Singletonパターンについて

少しずつデザインパターンを覚えていこうと思う。デザインパターンのうちのSingletonパターンを覚えたのでメモ。

Singletonパターンとは

Singletonは一枚札を意味する。一枚札とは、トランプの一組に含まれる唯一のカードである。このパターンは、クラスのインスタンスが1つしか生成されないことを保証する。

Singletonパターンの適用例

以下にJavaによるSingletonパターンの例を示す。

public class RegisterNote {
    private static RegisterNote registerNote = new RegisterNote();
    private RegisterNote(){}
    public static RegisterNote getInstance(){
        return registerNote;
    }
}

注目すべき点は、コンストラクタの識別子が private となっていること。コンストラクタの識別子が private になっていることで、RegisterNoteのインスタンスを外部から生成することができない。では、どうするのかと言うと以下のように取得せざるを得なくなっている。

RegisterNote note = RegisterNote.getInstance();

参考
5. Singleton パターン | TECHSCORE(テックスコア)
書籍 Java言語で学ぶ デザインパターン入門