首先什么是特性?
大家平时都会在编程的时候使用注释 // /* */
如果说 //注释是给程序员用的
那么特性就是专门给计算机看的注释,一般写在命名空间上方,对象名上方,方法名,类名的上方
C#特性有很多 不过大体可以分为四类:
1.功能性信息 : 如[Serializable] 加在类前,表示该类可被串行化
[Serializable]
public class HumanProperty
2.提示性信息:如[Obsolete]表示该方法已经过时,提醒程序员使用新的函数代替
[Obsolete("这个方法已过时")]
public virtual void CalcAverage(int speed) //警告,但仍能使用该函数
[Obsolete("这个方法已过时",true)]
public virtual void CalcAverage(int speed) //警告,并且该函数无法使用
3.限制性信息:如[Conditional("DEBUG")]表示下面方法只有在调试模式下才有效
[Conditional("DEBUG")]
public void UnitTest();
4.描述性信息:如[Description]对所指对象进行详细的描述
public enum CreditCardType
{
[Description("Unknow")]
Unknow,
[Description("Corp Card")]
CC
}