「駑馬十駕」 IT系情報を中心に調べた事をコツコツ綴っています。

Object型から総称型(ListやMapなど)へキャストする場合、Java 5.0以降では以下の様に記述すると「型の安全性: Object から Map への未検査キャスト」 とコンパイラが警告を表示してきます。

単純に警告を表示させないだけで良いのならメソッドの手前に「@SuppressWarnings(“unchecked”)」を記載すれば良いのですが、それではメソッド内全てで本来チェックが必要な箇所までチェックされなくなってしまうのであまり好ましい方法とは言えません。個人的に一番良いと思われる方法はObject型をキャストする専用メソッドを作成し、その中でのみObject型からListやMapなどの総称型へキャストする方法です。

Javaソース

    総称(Generics)を使用することで、呼出元の期待値に合わせてキャストされます。

JUnitサンプル

Ads by Google

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">