Net Core教程

C#重点语法——特性

本文主要是介绍C#重点语法——特性,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

特性的基本理解

*************************************************************************************

一.含义

特性是一种声明性标签。(类,方法,结构,枚举,组件)

二.使用方法

 

 第一个参数表示添加的目标,说明这个特性加到什么样的数据上面(可以指定加到类,构造函数,字段,方法,属性)

 

 第二个参数表示可以在同一个对象上加上多个特性。

第三个参数如果为true表示该特性可以被派生类继承。这里注意这里的Inherited如果为true,作用于的是子类,对目前本身的类没有影响,对子类有作用。

注意如果加上特性后,提示要这个只对特性类有效,说明在要注明的类需要继承Attribute类。可以把特性理解为一个构造函数。因为在特性上按F12建进去后其实跳入的是构造函数。

在使用特性时可以省略后面的Attribute

了解一个特性【obsolete()】(表示过时的特性),这个()可写可不写,不写的话也默认就是无参构造,里面也可以传参,这样可以起到提示作用。

 

 具体其他的用法可以看他的定义。

 

 可以打开摘要去看具体的含义,比如那个第三个构造函数,如果那个error是true,代表的是被标注的该对象,会报错,报的错就是前面那个message。

 

 

 

如果第二个参数写一个false,就只会是警告

************************************************************************

自定义特性的理解

在自定义的类上面要把用途,用法等标明清楚。所以要借助AttributeUsage

举例:定义自定义特性

 

自定义特性的使用

 

 

这篇关于C#重点语法——特性的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!