マイペースなプログラミング日記

DTMやプログラミングにお熱なd-kamiがマイペースに書くブログ

1.4-m1で気になったこと

Wicketの1.4からGenericsが使えるようになるけど、1.4-m1のLabelのソースを見て気になったことがある。それは3つのうちの2つのコンストラクタの部分で気になった

public Label(final String id, String label)
{
    this(id, new Model(label));
}

public Label(final String id, IModel<T> model)
{
    super(id, model);
}

この2つのコンストラクタを見る限り上のコンストラクタ

public Label(final String id, String label)
{
    this(id, new Model<String>(label));
}

のようにしないと、上のコンストラクタを使い続ける限り『未チェック又は安全ではありません』と毎回、警告がでてしまうんじゃないだろうか。

Label<Integer> label = new Label<Integer>("hello", "Hello World");

こんなことしてもエラーにならないし。ミスでもしない限りこんなことはしないだろうけど