Obsolete在什么情况下使用?

答:这个特性是用来做程序改动时使用,当一个功能需要扩展但是想用写其它方法,为了方便其它的程序员调用时可以使用.因为它可以提示需要用哪个方法(描述不准确还是自己理解吧).

[Obsolete("提示",bool)]标识符是表示下面的属性或者方法过时
第一个参数可以用来显示提示信息
第二个参数用来控制被标识的属性是否可以再使用

下面来个栗子:

1.不带参数的:

如图定义一个方法,然后在上面加了一个[Obsolete]用来表示这个方法过时

调用时就会出现这种情况:

现在这个函数还是能使用滴,就是在下面加了一个提示而已.

毕竟在有些项目里有的地方的功能调用了以前老的方法,如果把这个方法删掉的话需要改很多的地方就太麻烦了,这时就可以采用这种方式然后再定义一个新的方法去实现功能

2.带提示的玩法:

[Obsolete("提示")]

栗子:

调用结果:这时我们可以发现在警告里可以看到提示信息

3.禁用过时方法:

在Obsolete的括号里第二个参数可以控制下面那个属性是否可以继续使用,如果设置为true则调用时就会报错,不让使用,如果为false则只是警告可以接着使用这个函数

例如下面的两个方法:

MethodOne这个方法参数设置的为false所以在主函数里是可以使用的而MethodTwo这个方法设置的为true所以再调用时候是不会提示的而且手写出来会报错

调用结果:

转载于:https://www.cnblogs.com/lichuangblog/p/8043704.html

vs Obsolete标识符相关推荐

  1. C/C++ 编程规范(02)— 标识符命名

    标识符的命名要清晰.明了,有明确含义,同时使用完整的单词或大家基本可以理解的缩写,避免使人产生误解. 说明:较短的单词可通过去掉"元音"形成缩写:较长的单词可取单词的头几个字母形成 ...

  2. java中标识符,关键字,数据类型

    什么是标识符? 在java语言中用来给一个类,变量或方法命名的符号 标识符的命名规则 标识符可以由字母.数字.下划线(_).美元符($)组成,但不能包含 @.%.空格等其它特殊字符,不能以数字开头. ...

  3. Go 学习笔记(4)— Go 标识符、数据类型之间转换、布尔型、整型、浮点型、interface 类型

    1. 标识符整体分类 Go 标识符整体分类如下图所示: 2. 数据类型分类 Go 语言按类别有以下几种数据类型: 类型 描述 布尔型 布尔型的值只可以是常量 true 或者 false 数字类型 整型 ...

  4. Java基础语法(一)注释,关键字,常量,变量,数据类型,标识符,数据类型转换...

    从今天开始,记录学习Java的过程.要学习Java首先得有环境,至于环境的安装我就不说了,百度有很多教程,比如:http://jingyan.baidu.com/article/20095761904 ...

  5. [笔记]C#基础入门(八)——C#标识符的命名规则

    程序中的变量名.常量名.类名.方法名,都叫做标识符.C#有一套标识符的命名规则,如果命名时不遵守规则,就会出错.这套规则简单说有下面三条: ①标识符只能由英文字母.数字和下划线组成,不能包含空格和其他 ...

  6. linux文件描述符与标识符,文件描述符fd

    这里以问答的方式来讨论这个问题: 1. 文件描述符 fd 和文件指针 FILE *的关系? 文件描述符是什么?我们知道每一个进程都有一个自己的PCB(进程控制块),进程控制块的结构是: struct ...

  7. std::max,std::min错误:应输入标识符的解决方法

    使用VS2010编写的C++程序 std:min 转换到 VS2013无法识别,显示"错误:应输入标识符".     标准库在头中定义了两个模板函数std::min() 和 std ...

  8. 《从零开始学Swift》学习笔记(Day5)——我所知道的标识符和关键字

     Swift 2.0学习笔记(Day5)--我所知道的标识符和关键字   原创文章,欢迎转载.转载请注明:关东升的博客 好多计算机语言都有标识符和关键字,一直没有好好的总结,就是这样的用着,现在小 ...

  9. SCRIPT1028:缺少标识符、字符串或数字 jquery ajax

    2019独角兽企业重金招聘Python工程师标准>>> SCRIPT1028:缺少标识符.字符串或数字 使用jquery时报此错误 究其原因是对象键值对格式错误: 原格式:   多了 ...

最新文章

  1. 为什么batchnormalize 有效
  2. printwriter 要close吗_中国股市:市盈率低估,就意味着可以买入吗?不懂你就输了...
  3. 【sqlite权威指南】笔记3 sqlite入门
  4. MySQL分区表概念以及优缺点
  5. UE4学习-AI导航网格的创建及修改
  6. ASP.NET 中 Cookie 的基本知识
  7. java 内存和实际内存_请问更改eclipse内存和更改jvm内存是一会事儿吗?
  8. 2016面试——腾讯、蚂蚁金服、蘑菇街
  9. 怎样在数组末尾添加数据_如何利用C++实现可变长的数组?
  10. SpringBoot 之环境搭建
  11. java post get 请求_java get post 请求
  12. Unity Shader:细分着色器(Tessellation Shader)在Unity顶点着色器中的写法以及各参数变量解释
  13. URL编码(urlencoding)中关于空格的问题
  14. 论文写作——latex三线表tabular*文本居中与正文两端对齐、标题加黑
  15. 32 道常见的 Kafka 面试题
  16. 0021:孩子也是要将心比心的
  17. [第四届蓝桥杯省赛C++B组]省赛全题目题解
  18. Mybatis深层理解之mybatis到底为我们做了什么?
  19. Color Constancy Datasets
  20. 聊一聊 C# 后台GC 到底是怎么回事?

热门文章

  1. ROS学习笔记12(用Python写一个简单的消息发布和消息订阅)
  2. python middleware模块_python之auth模块
  3. ios 隔空投安装ipa_iOS 安装自己服务器上的IPA包
  4. 静态注册fragment_Fragment的静态和动态添加方式以及Fragment和Activity之间的通信方式...
  5. string字符串数字自增_常见的字符串操作
  6. Jenkins配置钉钉通知
  7. TokenInsight:反映区块链行业整体表现的TI指数较昨日同期下跌1.15%
  8. SAP License:SE16如何删除或合修改数据库表
  9. 赛锐信息:SAP ABAP 环境
  10. Linux-Shell编程之数组操作