Singletonについて

クラスのインスタンスを一つしか作りたくない時、Singletonという方法で記述します。またSingletonを記述することでこのクラスのインスタンスは一つしかないということを明示的に表すことが出来ます。

public class Hoge(){
    private static Hoge hoge = new Hoge();
    private Hoge(){
        System.out.println("called");
    }
    public static Hoge getInstance(){
        return hoge;
    }
} 

Singletonクラスはnew出来ないので、他のクラスから呼ぶときは

Hoge instance = Hoge.getInstance();

というようにgetInstanceメソッドを使います。 getterとsetterのように、自分のクラスをprivateなクラス変数として定義し、publicのgetInstanceで呼ばれた時にクラスを返すようになっています。