.NET进阶篇03-Reflection反射、Attribute特性

本文深入探讨.NET框架中的反射机制,包括如何使用反射创建对象、调用方法和访问字段属性。同时,文章介绍了Attribute特性,讲解了自定义特性及其在代码中的应用,阐述了反射与特性在提升代码灵活性和可扩展性方面的重要作用。
摘要由CSDN通过智能技术生成

知识需要不断积累、总结和沉淀,思考和写作是成长的催化剂

内容目录

一、概述

二、反射

1、反射使用

2、创建对象

3、调用方法

4、字段属性

三、特性

四、总结

一、概述

反射其实无处不在,我们用VS进行调试时候,查看成员列表、修改变量值都是通过反射来实现的。我们写业务代码可能很少去写反射,但理解反射是从菜鸟到大牛的必经之路。无论EF还是ASP.NET,几乎所有框架都用到反射。反射动态创建对象、动态赋值、动态调用方法

前面简单介绍过.NET的第一次编译,会编译成IL(中间语言),反射就是利用IL在运行时获取类的各种信息(字段、方法、构造函数等),并且可以动态的创建对象调用方法。反射就是通过使用metadata的过程

每一个类对应有一个Type对象,方法对应一个MethodInfo对象,属性对应一个PropertyInfo,这些都是一个类的元数据(MetaData)保存在IL中,所以解析IL可以获取一个类的各种信息。

特性就和反射绑定的,没有反射,特性就无从使用。特性本质就是给类、方法等元素添加一些额外的信息和行为。特性添加编译后也产生IL&#

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值