class
セッションオブジェクトにアクセスできないutilがあります。このutilクラスを一度だけ初期化し、login
アプリケーション全体でそのインスタンスを取得したいと思います。
ここで、すべてのユーザーは、これを実現する方法として、そのutilクラスの独自のインスタンスを持っている必要があります。
私を助けてください
class
セッションオブジェクトにアクセスできないutilがあります。このutilクラスを一度だけ初期化し、login
アプリケーション全体でそのインスタンスを取得したいと思います。
ここで、すべてのユーザーは、これを実現する方法として、そのutilクラスの独自のインスタンスを持っている必要があります。
私を助けてください
シングルトンパターンをお探しですか??
private static MyClass instance;
private MyClass(){}
public static MyClass getInstance() {
if (instance != null) {
return instance;
} else {
return new MyClass();
}
}
public static void setInstance(MyClass inst) {
instance = inst;
}
ファクトリパターンを使ってみませんか。次に、パラメータをファクトリメソッドに渡し、ユーザーごとに新しいインスタンスを返すことができます。
シングルトンについては @GanGnaMStYleOverFlow に同意しますが、その実装のより良いバージョンを提供したいと考えています。
public class MyClass {
private static MyClass instance;
private MyClass() {}
public static synchronized MyClass getInstance() {
if (instance != null) {
instance = new MyClass();
}
return new MyClass();
}
}
コンストラクターがプライベートであるため、このクラスを直接インスタンス化することはできません。によって管理されているため、このクラスのインスタンスを 2 つ作成することはできませんgetInstance()
。であるため、この実装はスレッドセーフgetInstance()
ですsynchronized
。