次の方法で共有


リフレクション出力の抽象化クラス

更新 : 2007 年 11 月

リフレクション出力の抽象化クラスは、共通言語ランタイムの基礎となる共通型システムに厳密に対応しています。

アセンブリとは、読み込み可能なコード モジュールやその他のリソースをまとめて構成したものであり、1 つの機能単位としての役割を果たします。アセンブリの名前は、共通型システムの名前付け階層の基礎を構成しています。

このトピックでは、アセンブリを静的アセンブリと動的アセンブリに分類しています。静的アセンブリとは、ディスクから読み込まれるアセンブリです。動的アセンブリとは、リフレクション出力を使用して作成されるアセンブリです。リフレクション出力により使用される抽象化クラスを次の表に示します。

抽象化クラス

説明

AssemblyBuilder

動的アセンブリを定義および記述するクラスです。Assembly クラスから継承します。

ConstructorBuilder

コンストラクタを定義および記述するクラスです。このコンストラクタは、型のインスタンスを作成する操作を記述します。ConstructorInfo クラスから継承します。

CustomAttributeBuilder

カスタム属性の定義を支援するクラスです。

DynamicMethod

デリゲートを使用して実行できるグローバル メソッドを定義するクラスです。

EnumBuilder

列挙型の定義と記述を支援するクラスです。Type クラスから継承します。

EventBuilder

イベントの定義と記述に使用されるクラスです。EventInfo クラスから継承します。オブジェクト型のイベントにより、名前付き状態トランジションが指定されます。このトランジションでは、サブスクライバがアクセサ メソッドを使用して重要性に関する登録と登録解除を実行できます。

FieldBuilder

フィールドの定義と記述に使用されるクラスです。FieldInfo クラスから継承します。フィールドとは、1 つの値を構成する名前付き要素です。型にはフィールド メンバを含めることができます。さらに、モジュールや型は、ポータブル実行可能 (PE) ファイルの .sdata セクションで定義されているフィールドも参照できます。

ILGenerator

Microsoft Intermediate Language (MSIL) の定義と記述に使用されるクラスです。実行時に、ジャスト イン タイム (JIT) コンパイラによって MSIL の命令がネイティブ コードに変換されます。

Label

このクラスは、ILGenerator クラスで使用される非透過のラベルを表すクラスです。ラベルは MSIL コード内の特定の場所に位置してます。

LocalBuilder

メソッドの本体で宣言されているローカル変数を表すクラスです。

MethodBuilder

メソッドの定義と記述に使用されるクラスです。MethodInfo クラスから継承します。メソッドは、型の値に対して実行できる操作を記述します。

ModuleBuilder

モジュールの定義と記述に使用されるクラスです。Module クラスから継承します。

モジュールとは、コンパイル単位または開発単位です。リフレクション出力 API を使用して作成されたモジュールは、その作成されたモジュールで実行している間は動的モジュールと呼ばれます。動的モジュールという用語は、ディスクに保存されているモジュールやディスクから読み込まれているモジュールには適応されません。ディスクに PE ファイルとして保存できる動的モジュールは、永続動的モジュールと呼ばれます。メモリにだけ存在する動的モジュールは、一時動的モジュールと呼ばれます。

ParameterBuilder

パラメータの定義と記述に使用されるクラスです。ParameterInfo クラスから継承します。パラメータとは、メソッドまたはコンストラクタの引数を表す位置です。

PropertyBuilder

プロパティの定義と記述に使用されるクラスです。PropertyInfo クラスから継承します。オブジェクト型のプロパティによって指定される名前付きの値へアクセスするには、この値の読み取り操作と書き込み操作を実行するアクセサ メソッドを使用します。

TypeBuilder

型の定義と記述に使用されるクラスです。Type クラスを継承します。型は値を記述します。その型は、有効な値と、型の値によってサポートされている有効な操作を定義します。型に含めることができるメンバは、型、メソッド、フィールド、プロパティ、およびイベントです。

参照

その他の技術情報

動的メソッドおよびアセンブリの出力

共通言語ランタイムのアセンブリ