C# 已知有一个和 类名 相同的字符串str, 如何根据str来获取这个类?
C#,现在我有一个类A,我想根据这个类名所对应的字符串"A"来,获取这个类。请教有什么方法可以实现?...
C#,现在我有一个类 A ,我想根据这个类名所对应的字符串"A"来,获取这个类。请教有什么方法可以实现?
展开
3个回答
展开全部
使用反射技术来实现你的需求
如果你要获取到这个类的对象实例可以这么做
以String类为例子
string str = "System.String";
String exp = (String )Activator.CreateInstance(str);
//如果你要得到这个类的类型信息可以这么做
Type expType = Type.GetType(str);
//使用Type对象也可以实例化一个对象同样调用上面方法
String exp = (String )Activator.CreateInstance(expType);
更请参考.NET反射技术,它可以教会你更多的关于后期绑定的信息
如果你要获取到这个类的对象实例可以这么做
以String类为例子
string str = "System.String";
String exp = (String )Activator.CreateInstance(str);
//如果你要得到这个类的类型信息可以这么做
Type expType = Type.GetType(str);
//使用Type对象也可以实例化一个对象同样调用上面方法
String exp = (String )Activator.CreateInstance(expType);
更请参考.NET反射技术,它可以教会你更多的关于后期绑定的信息
展开全部
Activator.CreateInstance 方法有一个重载可以,你查下。
Activator.CreateInstance(String, String) 使用命名的程序集和默认构造函数,创建名称已指定的类型的实例。
Activator.CreateInstance(String, String) 使用命名的程序集和默认构造函数,创建名称已指定的类型的实例。
追问
能说详细点吗?
我指的是我自己创建了一个类 A,现在想通过这个类的名字 "A" 来获取这个类,不是类的实例
就是通过某些方法来 输入一个 ”A“,获取类A
追答
你的目的是创建这个类的新实例还是获取已经创建的实例的引用?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以使用Activator的这个方法CreateInstance,其方法的参数是程序集和类名,如果能引用到这个程序集则正常就可以创建实例。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询