私はこの質問が奇妙だと思っていますが、ちょうど不思議です.JavaでSingletonクラスのインスタンスを複数作成する方法はありますか?シングルトンクラスの2つのインスタンスを作成するJava
私の状況はこのようなものです:
私はシングルトンクラスを持っていると私は2つのオブジェクト/そのクラスのインスタンスを持っている必要があります。複数のインスタンスを作成できるようにクラスを変更する方法はありますか?
私のクラス:
public class SingletonClass {
private static SingletonClass sSoleInstance;
//private constructor.
private SingletonClass(){
//Prevent form the reflection api.
if (sSoleInstance != null){
throw new RuntimeException("Use getInstance() method to get the single instance of this class.");
}
}
public static SingletonClass getInstance(){
if (sSoleInstance == null){ //if there is no instance available... create new one
sSoleInstance = new SingletonClass();
}
return sSoleInstance;
}
}
* 2つのインスタンスを作成したい場合は、それはシングルトンではありません。あなたが2つのインスタンスを作成する場合、それはひどく実装されたシングルトンです(このコードがあります)。 –
また、このコードを複数のスレッドから呼び出すこともできます。いくつかの呼び出しでは、2つのオブジェクトで終了する可能性があります。 http://stackoverflow.com/questions/70689/what-is-an-efficient-way-to-implement-a-singleton-pattern-in-javaを参照してください。それにもかかわらず、あなたは*なぜ*シングルトンと呼ばれるこの2つのインスタンスが必要なのか拡張できますか? –
'getInstance()'メソッドから返すインスタンスをどのように決めるのですか?あなたは 'getInstance1()'と 'getInstance2()'を持っていますか?それでは、あなたは何を呼びますか? –