リフレクションAPI(java.lang.reflectパッケージ) を使うと、 Javaアプリケーションの実行中に、 Javaクラスのメソッドやフィールド(メンバ変数)などの仕様を取得することができます。 またコンパイル時に正確なクラスが判明していないオブジェクトを、 特定のクラスのインスタンスとして実行時に作成・利用することができます。 一見、何に使うの?というリフレクションAPIですが、 JavaBeansクラスのプロパティにアクセスするような汎用ツールを作る際にとても便利に使えます。 Beansクラスはクラスによって異なるプロパティ値を持ち、 それに対応する名前のset/getメソッド (例えば、プロパティがmessageならsetMessage()&getMessage()メソッド) を持つのですが、さまざまなBeansに対応するツールを作ろうとすると、