📚
ITスクール DAY19 SingleTon
SingleTon
一つのオブジェクトのみ生成できるクラスを作成し、オブジェクトを生成する。
そのオブジェクトで色々なオブジェクトを扱ることで、メモリを節約することができる。
- コンストラクタは privateで生成。
- public static Classtype getInstance()でクラスをリターンするメソッド作成。
SingletonClass
class MySingletonClass{
//private field
private static MySingletonClass single_instance = null;
//private constructor
private MySingletonClass() {}
//public static method
public static MySingletonClass getInstance() {
if(single_instance == null) {
single_instance = new MySingletonClass();
}
return single_instance;
}
}
public class SingletonClass {
public static void main(String[] args) {
MySingletonClass singleton1= MySingletonClass.getInstance();
System.out.println(singleton1);
System.out.println(singleton1.toString());
MySingletonClass singleton2= MySingletonClass.getInstance();
System.out.println(singleton2);
System.out.println(singleton2.toString());
MySingletonClass singleton3= MySingletonClass.getInstance();
System.out.println(singleton3);
System.out.println(singleton3.toString());
}//main()end
}
フィールドに**private static final MySingletonClass single_instance = new new MySingletonClass();**を作成することで、事前に(ランチタイム前)メモリに割当たる方法もある。
Discussion