C# 特性(Attribute) 是一种用于向程序的元数据(如类、方法、属性等)添加信息的工具。特性在编译时、运行时都可以被访问,用于提供额外的功能或行为控制。在 Unity 开发中,特性广泛用于实现自定义检查器、序列化控制、脚本生命周期管理等。
1. 什么是 C# 特性(Attribute)?
C# 特性是一个用于修饰类、方法、属性、字段、参数等的声明性标签。通过特性,可以为程序元素提供元数据(Metadata),这些元数据可以在运行时通过反射进行访问。
1.1 特性的语法
- 定义特性:通过继承
System.Attribute
类创建自定义特性。 - 应用特性:通过方括号
[AttributeName]
将特性应用到目标上。
示例:自定义特性
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)]
public class MyCustomAttribute : Attribute
{
public string Desc