戻り値がObjectだともう一回キャストしないといけない…
そんな悩みを経て、
総称型で解決させることにしました。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class MyUtilities { | |
public static <T> T castInstance(final Object object, final Class<T> clazz) { | |
try { | |
return clazz.cast(object); | |
} catch (ClassCastException e) { | |
return null; | |
} | |
} | |
} |
これでメソッドの戻り値型が動的に変化します。
ああ、キャストに失敗する可能性が高い場合はinstanceofとかで判定した方がいいかもしれません。
…役に立つの?これ。
0 件のコメント:
コメントを投稿