Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

リフレクション

リフレクションによって、Stringの値(strVal)を各クラスのオブジェクトに変換したいと思っております。
下のようなコードで、this.typeにセットしてあるオブジェクトのvalueOfメソッドを実行したいのですが、clazz.getMethod部分で次のようなExceptionが発生してしまいます。
staticメソッドはgetMethodでは取得・実行できないのでしょうか?
ご存知の方いらっしゃいましたら、教えて頂けないでしょうか。

【Exception】
java.lang.NoSuchMethodException: java.lang.String.valueOf()

【コード】
Class clazz = Class.forName(this.type);
Method method = clazz.getMethod("valueOf", new Class[0]);

return method.invoke(clazz.newInstance(), new Object[]{strVal} );


今回、this.typeには、"java.lang.String"が入っています。

2

回答

8361

閲覧

2件の回答

評価

0

引数のないvalueOfメソッドなんぞないでしょう。

評価

0

解決しました。
ありがとうございます。

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。