デザインパターン Singleton:たった1つのインスタンス
概要
インスタンスが1つしか存在しない事を保証したい場合に利用
クラス図
Singleton
package myPack;
public class Singleton {
private static Singleton singleton = new Singleton();
クラスがロードされる際(一度だけ)にインスタンス変数を生成
public class Singleton {
private static Singleton singleton = new Singleton();
クラスがロードされる際(一度だけ)にインスタンス変数を生成
private Singleton(){}
外部からのコンストラクタ実行を禁止
public static Singleton getInstance(){
return singleton;
内部で生成したインスタンスを返す
}
}
利用
package myPack;
public class Main {
public static void main(String[] args){
Singleton obj1 = Singleton.getInstance();
Singleton obj2 = Singleton.getInstance();
if (obj1==obj2){
System.out.println("同じ");
}
}
}
public class Main {
public static void main(String[] args){
Singleton obj1 = Singleton.getInstance();
Singleton obj2 = Singleton.getInstance();
if (obj1==obj2){
System.out.println("同じ");
}
}
}