Obsolete在什么情况下使用?
答:这个特性是用来做程序改动时使用,当一个功能需要扩展但是想用写其它方法,为了方便其它的程序员调用时可以使用.因为它可以提示需要用哪个方法(描述不准确还是自己理解吧).
[Obsolete("提示",bool)]标识符是表示下面的属性或者方法过时
第一个参数可以用来显示提示信息第二个参数用来控制被标识的属性是否可以再使用下面来个栗子:
1.不带参数的:
如图定义一个方法,然后在上面加了一个[Obsolete]用来表示这个方法过时
调用时就会出现这种情况:
现在这个函数还是能使用滴,就是在下面加了一个提示而已.
毕竟在有些项目里有的地方的功能调用了以前老的方法,如果把这个方法删掉的话需要改很多的地方就太麻烦了,这时就可以采用这种方式然后再定义一个新的方法去实现功能
2.带提示的玩法:
[Obsolete("提示")]
栗子:
调用结果:这时我们可以发现在警告里可以看到提示信息
3.禁用过时方法:
在Obsolete的括号里第二个参数可以控制下面那个属性是否可以继续使用,如果设置为true则调用时就会报错,不让使用,如果为false则只是警告可以接着使用这个函数
例如下面的两个方法:
MethodOne这个方法参数设置的为false所以在主函数里是可以使用的而MethodTwo这个方法设置的为true所以再调用时候是不会提示的而且手写出来会报错
调用结果: