こんちゃ(´・ω・)ノ
staticだけを扱うクラスを作るときに完全性を保障するために、
こんなことをするといいかも。
通常コンストラクタは何も指定ないとデフォルトコンストラクタが使用されます。
このコンストラクタをprivateにすることで、
明示的にインスタンス化できなくするのです。
----------------------------------------------------------------
class Test{
public static final String ZIKANASA="朝";
public static final String ZIKANHIRU="昼";
public static final String ZIKANYORU="夜";
}
----------------------------------------------------------------
このままだとデフォルトコンストラクが使用されるので、
インスタンス化される恐れがあります。
しかしstaticしかないのでインスタンス化する必要性がありません。
こんなときは、
----------------------------------------------------------------
class Test{
public static final String ZIKANASA="朝";
public static final String ZIKANHIRU="昼";
public static final String ZIKANYORU="夜";
private Test(){}
}
----------------------------------------------------------------
上記のようにprivateでコンストラクタを定義します。
これではインスタンス化はできませんし、継承などしてもインスタンス化できないです。
[0回]
PR
COMMENT