在C#中,可以使用typeof關(guān)鍵字獲取一個類型的Type對象,然后利用Type對象的方法進行類型轉(zhuǎn)換。以下是一個簡單的示例:
// 定義一個父類
class ParentClass
{
public void ParentMethod()
{
Console.WriteLine("This is a method in ParentClass");
}
}
// 定義一個子類
class ChildClass : ParentClass
{
public void ChildMethod()
{
Console.WriteLine("This is a method in ChildClass");
}
}
class Program
{
static void Main()
{
// 使用typeof關(guān)鍵字獲取ChildClass的Type對象
Type childType = typeof(ChildClass);
// 使用Activator.CreateInstance方法創(chuàng)建ChildClass的實例
object childInstance = Activator.CreateInstance(childType);
// 將childInstance轉(zhuǎn)換為ChildClass類型
ChildClass child = childInstance as ChildClass;
// 調(diào)用子類的方法
child.ChildMethod();
}
}
在上面的示例中,我們首先使用typeof關(guān)鍵字獲取ChildClass的Type對象,然后使用Activator.CreateInstance方法創(chuàng)建ChildClass的實例。最后,我們將創(chuàng)建的實例轉(zhuǎn)換為ChildClass類型,并調(diào)用子類的方法。