- 追加された行はこの色です。
- 削除された行はこの色です。
シングルトンを実装する方法として一般的なものは以下の2つです。
+privateコンストラクタとpublic staticメンバー提供
+staticファクトリメソッド
** privateコンストラクタとpublic staticメンバー提供 [#i8f940a5]
#sh(java){{
class Kinoshita1 {
public static final Kinoshita1 INSTANCE = new Kinoshita1();
private Kinoshita1() {
}
public void sumea() {
}
}
}}
** staticファクトリメソッド [#nd32da4c]
#sh(java){{
class Kinoshita2 {
private static final Kinoshita2 INSTANCE = new Kinoshita2();
public Kinoshita2 getInstance() {
return INSTANCE;
}
public void sumea() {
}
}
}}
** シングルトンベストプラクティス [#n5f33898]
java1.5からenumが使えるようになりました。これを利用すれば、非常に簡単にシングルトンを実現できます。
*** サンプル [#gf9197ec]
#sh(java){{
public enum EnumSingleton {
INSTANCE;
public void sumea() {
}
}
class UserSingleton {
public void use() {
EnumSingleton.INSTANCE.sumea();
}
}
}}
これがベストだと思います。
#hr
/[[Top]]/[[codetips]]/