#invokeは第一引数はそのメソッドをインヴォークしたいインスタンスを、第二引数はそのメソッドに渡したい引数をオブジェクト配列で渡すことになっています。キャストしてあげる必要があります。あと戻り値もObject型になってしまっているので、キャストしてあげましょう。結果はちゃんと文字列のインスタンスなんですが、見せかけ上の型がObjectになってしまうという話です。これは#invokeの第二引数は実際は具体的な型なんだけどもObject配列で渡しているのと同じ理由ですね。リフレクションではどんな型でも扱えるよう、インスタンスはObject型で操作するという。手がかかりますが、Javaのお茶目な一面ですね。脇道に逸れましたが次はセッターに行きましょう。基本的にはゲッターと同じです。copyPropertyしてみるでは最後にプロパティのコピーをしてみましょう。ゲッターとセッターを組み合わせるだけで簡単に実現できますね、こんな感じです。した結果を直接入れるといった操作をここでは行っています。nameProp.getWriteMethod();そうか、get/setのメソッド名の変換とかだけじゃなくて、例外処理とかもやってくれてるんだね。おわりにこのクラスを知っていると、リフレクションのコードを書く際にちょっとだけ楽できますね。Java標準のSDKでもまだまだ知らないことがいっぱいあるなぁ。テストで書いていたソースも載せておきます。素数10001番目を求める問題。»プロフィールid:fumokmm新しいNPNLです。(2)はてなブログをはじめよう!fumokmmさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。