📅  最后修改于: 2023-12-03 14:59:39.835000             🧑  作者: Mango
在C#中,我们可以通过类型信息(Type)创建对象实例。这可以通过反射机制实现。
Type type = typeof(MyClass); //获取类型信息
object instance = Activator.CreateInstance(type); //创建实例
上述代码段中,'MyClass'表示某个已知类型名称。可以通过typeof方法获取类型信息。
Activator.CreateInstance方法用于创建实例,接受一个Type参数用于指定类型信息。
public class MyClass {
public void DoSomething() {
Console.WriteLine("Something done.");
}
}
static void Main(string[] args) {
Type type = typeof(MyClass);
object instance = Activator.CreateInstance(type);
//调用实例方法
MethodInfo method = type.GetMethod("DoSomething");
method.Invoke(instance, null);
}
上述代码中,我们定义了一个MyClass类,并调用了DoSomething方法。由于我们使用反射创建了实例,我们需要获取类型的MethodInfo并调用Invoke方法来执行该方法。
以上就是在C#中创建实例类型的一些示例。这些示例可用于动态创建实例并调用类成员。