首页 > 代码库 > C# Activator.CreateInstance 动态创建类的实例(一)
C# Activator.CreateInstance 动态创建类的实例(一)
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace Kernel.SimpleLibrary{ public class Person { private string name; public Person(){ } public Person(string name) { this.name = name; } public string Name { get { return this.name; } set { this.name = value; } } public override string ToString() { return this.name; } }}
using System;using System.Reflection;using System.Runtime.Remoting;public class Program{ static void Main(string[] args) { //创建在指定程序集中定义的指定类型的新实例 //assemblyName = 命名空间,typeName = 命名空间.类名 ObjectHandle handle = Activator.CreateInstance("Kernel.SimpleLibrary", "Kernel.SimpleLibrary.Person"); Object p = handle.Unwrap(); Type t = p.GetType(); PropertyInfo prop = t.GetProperty("Name"); if (prop != null) prop.SetValue(p, "Hello world!"); MethodInfo method = t.GetMethod("ToString"); Object retVal = method.Invoke(p, null); if (retVal != null) Console.WriteLine(retVal); }}
C# Activator.CreateInstance 动态创建类的实例(一)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。