シングルトンデザインパターンを熟考しながら、私は熱心な初期化シングルトンとスタティックブロック初期化シングルトンパターンの間にいました。 のは熱心な初期シングルトンクラスのコードを言ってみましょう - followed-eager初期化シングルトン対遅延初期化シングルトン
public class StaticBlockSingleton {
private static StaticBlockSingleton instance;
private StaticBlockSingleton(){}
//static block initialization for exception handling
static{
try{
instance = new StaticBlockSingleton();
}catch(Exception e){
throw new RuntimeException("Exception occured in singleton instance");
}
}
public static StaticBlockSingleton getInstance(){
return instance;
}
}
として
public class EagerInitSingleton {
private static final EagerInitSingleton instance = new EagerInitSingleton();
//private constructor
private EagerInitSingleton(){}
public static EagerInitSingleton getInstance(){
return instance;
}
}
と静的ブロックシングルトンクラスコードHERE遅延初期化とスレッドの安全性について話をしないことができます。 スタティックブロックシングルトンで2つのスタティックブロックがどのように変化しているかを把握したいと思います。
に相当しているのですか? – Pragnani
私は何かを学ぶためにここにいますので、好きではない場合は無視してください。:) –