C#关于反射Reflect的总结

反射

1.反射获取程序集的三种方式

  • Assembly.Load();//这种方式只需要提供程序集的名称
  • Assembly.LoadFile(path);//这种方法需要提供程序集完整的路径
  • Assembly.LoadFrom(“XXX.dll”);//需要程序集名称及其后缀名

2.获取类型

assembly.GetTypes();//获取所有类型
assembly.Gettype(“命名空间.类名”);//获取指定类型

3.GetType

Assembly assembly = Assembly.LoadFrom("Ace.dll");
Type type=assembly.Gettype("Ace.UltramanAce");
PropertyInfo[] props=type.GetProperties();
FieldInfo[] fields=type.GetFields();
MethodInfo[] methods=type.GetMethods();

实例化

Assembly自带的CreateInstance()
自带的CreateInstance实例化对象时需要指定命名空间和类名

object o = assembly.CreateInstance("Ace.UltramanAce");
dynamic d = assembly.CreateInstance("Ace.UltramanAce");

多态的使用

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值