先頭へ戻る

リフレクション | Programming Place Plus 用語集

Programming Place Plus トップページ用語集

先頭へ戻る

名称

解説

プログラムが、自分自身に関する情報を読み取ったり、書き換えたりする技術のことです。

たとえば、「実行時オブジェクトが何であるかを調べ、それによって処理を分岐させる」、「文字列を使って、オブジェクトが持っているメソッドを取り出して、呼び出す」といった、柔軟なプログラムを実現できる技術です。以下は架空のプログラミング言語による例です。

// オブジェクトの型を問い合わせて分岐する
if (obj.GetType() == Type.Int) {
    // ...
}
else if (obj.GetType() == Type.String) {
    // ...
}

// 文字列を使って、オブジェクトのメソッドを取り出して実行する
Method method = obj.GetMethod("StartProcess");
method.Invoke();

この例のようなリフレクションは、プログラムの実行時に行われるものであり、動的リフレクションと呼ばれることがあります。また、リフレクションをコンパイル時に行う場合は、静的リフレクションと呼ばれます。


参考リンク

更新履歴


用語集のトップページへ

Programming Place Plus のトップページへ



はてなブックマーク に保存 Pocket に保存 Facebook でシェア
Twitter でツイート Twitter をフォロー LINE で送る
rss1.0 取得ボタン RSS 管理者情報 プライバシーポリシー