次の方法で共有


Type.ReflectedType プロパティ

このメンバを取得するために使用したクラス オブジェクトを取得します。

Overrides Public ReadOnly Property ReflectedType As Type
[C#]
public override Type ReflectedType {get;}
[C++]
public: __property Type* get_ReflectedType();
[JScript]
public override function get ReflectedType() : Type;

プロパティ値

この MemberInfo オブジェクトを取得するために使用した Type オブジェクト。

解説

このプロパティは、 MemberInfo から継承した抽象プロパティを実装します。

使用例

派生クラスで、メソッドのリフレクションされた型を表示する例を次に示します。メソッド mMyClassA で宣言されていますが、そのリフレクションされた型は MyClassB から取得されます。

 
Imports System
Imports System.Reflection

Public MustInherit Class rtype

    Public MustInherit Class MyClassA
        Public MustOverride Function m() As Integer
    End Class

    Public MustInherit Class MyClassB
        Inherits MyClassA
    End Class

    Public Shared Sub Main()
        Console.WriteLine("Reflected type of m is {0}", _
           GetType(MyClassB).GetMethod("m").ReflectedType)
    End Sub
End Class

[C#] 
using System;
using System.Reflection;
 
public abstract class rtype 
{
    public abstract class MyClassA 
    {
        public abstract int m(); 
    }

    public abstract class MyClassB : MyClassA 
    {
    }

    public static void Main(string[] args) 
    { 
        Console.WriteLine("Reflected type of m is {0}",
            typeof(MyClassB).GetMethod("m").ReflectedType);
    }
}

[C++] 
#using <mscorlib.dll>
using namespace System;
using namespace System::Reflection;

public __abstract __gc class rtype 
{
public:
    __abstract __gc class MyClassA 
    {
    public:
        virtual int m() = 0; 
    };
    __abstract __gc class MyClassB : public MyClassA 
    {
    };
};

int main() 
{ 
    Console::WriteLine(S"Reflected type of m is {0}",
        __typeof(rtype::MyClassB)->GetMethod(S"m")->ReflectedType);
}

[JScript] 
import System;
import System.Reflection;
 
public abstract class rtype {
    public abstract class MyClassA {
        public abstract function m() : int; 
    }

    public abstract class MyClassB extends MyClassA {
    }

    public static function Main() : void  { 
        Console.WriteLine("Reflected type of m is {0}",
            MyClassB.GetMethod("m").ReflectedType);
    }
}
rtype.Main();

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET, Common Language Infrastructure (CLI) Standard

参照

Type クラス | Type メンバ | System 名前空間 | MemberInfo | DeclaringType