静的リフレクション(Static Reflection)とは、やや新しい実装テクニックのひとつであり、型やメンバを指示する情報の内でコンパイラが識別可能なもののみを用いて型やメンバの情報にアクセスする方法である。通常は指示情報としてメンバアクセスを行うラムダ式が用いられるので、「ラムダ式を用いてメンバの型情報にアクセスする方法」と理解しておく方が実用的かもしれない。
リフレクションにおける静的・動的の区別をはっきりさせるために簡単な例から始めることにする。 interface X { string MyProperty { get; set; } }
class Y : X { public string MyProperty { get; set; } } ・・・ X p = new Y(); Type t1 = p.GetType(); Type t2 = typeof(X);
とある場合に、p.GetType()で得られる型情報は、実行時にpに具体的に何が代入されているかに依存しているという意味で動的である。 これに対しtypeo...

まだコメントはありません。最初のコメントを登録してみませんか?