特性--Attribute

C# 特性(Attribute)

特性(Attribute)是用于在运行时传递程序中各种元素(比如类、方法、结构、枚举、组件等)的行为信息的声明性标签。您可以通过使用特性向程序添加声明性信息。一个声明性标签是通过放置在它所应用的元素前面的方括号([ ])来描述的。

特性(Attribute)用于添加元数据,如编译器指令和注释、描述、方法、类等其他信息。.Net 框架提供了两种类型的特性:预定义特性和自定义特性。

特性就是一个类,直接或间接继承自Attribute类

实际上特性添加后,编译后会在元素内部产生IL,我们无法直接使用,在metadata里会有记录。

特性本身没用,任何一个生效的特性,都是因为有地方主动使用了,特性需要结合反射使用,在不破坏类型封装的前提下,加点额外的信息和行为。

原文地址:https://www.cnblogs.com/1016391912pm/p/11629212.html