java注解:@Deprecated(不建议使用的,废弃的);@SuppressWarnings(忽略警告,达到抑制编译器产生警告的目的)

java注解:@Deprecated(不建议使用的,废弃的), @SuppressWarnings(忽略警告,达到抑制编译器产生警告的目的)
@Deprecated可以修饰类、方法、变量,在java源码中被@Deprecated修饰的类、方法、变量等表示不建议使用的,可能会出现错误的,可能以后会被删除的类、方法等,如果现在使用,则在以后使用了这些类、方法的程序在更新新的JDK、jar包等就会出错,不再提供支持。     个人程序中的类、方法、变量用@Deprecated修饰同样是不希望自己和别人在以后的时间再次使用此类、方法。  当编译器编译时遇到了使用@Deprecated修饰的类、方法、变量时会提示相应的警告信息。
@SuppressWarnings 可以达到抑制编译器编译时产生警告的目的,但是很不建议使用@SuppressWarnings注解,使用此注解,编码人员看不到编译时编译器提示的相应的警告,不能选择更好、更新的类、方法或者不能编写更规范的编码。同时后期更新JDK、jar包等源码时,使用@SuppressWarnings注解的代码可能受新的JDK、jar包代码的支持,出现错误,仍然需要修改。
可以看成@Deprecated注解和@SuppressWarnings注解是成对出现的。

通过@SuppressWarnings的源码可知,其注解目标为类、字段、函数、函数入参、构造函数和函数的局部变量。而家建议注解应声明在最接近警告发生的位置


[java] view plaincopy
  1.    /**  
  2. * @Description: 编码时我们总会发现如下变量未被使用的警告提示, 
  3. * 上述代码编译通过且可以运行,但每行前面的“感叹号”就严重阻碍了我们判断该行是否设置的断点了。 
  4. * 这时我们可以在方法前添加 @SuppressWarnings("unchecked") 去除这些“感叹号”。 
  5. */  
  6. public String convertXmlToSendMethods(Document document){  
  7.     //发布方式(1到多个)  
  8.     List<Element> methodName = document.selectNodes("/alert/code/method/methodName");  
  9.     List<Element> message = document.selectNodes("/alert/code/method/message");  
  10.     List<Element> audienceGrp = document.selectNodes("/alert/code/method/audienceGrp");  
  11.     List<Element> audenceprt = document.selectNodes("/alert/code/method/audenceprt");  
  12.     //处理‘发布方式’复数  
  13.     int methodNameSize = 0;  
  14.     if (null!=methodName && methodName.size()>0) {  
  15.         methodNameSize = methodName.size();  
  16.     }  
  17.     JSONArray jsonArraySendMethods = new JSONArray();  
  18.     for (int i = 0; i < methodNameSize; i++) {  
  19.         JSONObject json = new JSONObject();  
  20.         json.put("methodName", methodName.get(i).getTextTrim());  
  21.         json.put("message", message.get(i).getTextTrim());  
  22.         json.put("audienceGrp", audienceGrp.get(i).getTextTrim());  
  23.         json.put("audenceprt", audenceprt.get(i).getTextTrim());  
  24.         jsonArraySendMethods.put(json);  
  25.     }  
  26.     return jsonArraySendMethods.toString();  
  27. }  

@SuppressWarings注解 详解

[java] view plaincopy
  1.    /**  
  2. * @Description:示例1——抑制单类型的警告:  
  3. */  
  4. @SuppressWarnings("unchecked")  
  5. public void addItems(String item){  
  6.   @SuppressWarnings("rawtypes")  
  7.    List items = new ArrayList();  
  8.    items.add(item);  
  9. }  
  10.   
  11. /**  
  12. * @Description: 示例2——抑制多类型的警告:  
  13. */  
  14. @SuppressWarnings(value={"unchecked""rawtypes"})  
  15. public void addItems(String item){  
  16.    List items = new ArrayList();  
  17.    items.add(item);  
  18. }  
  19.   
  20. /**  
  21. * @Description:示例3——抑制所有类型的警告: 
  22. */  
  23. @SuppressWarnings("all")  
  24. public void addItems(String item){  
  25.    List items = new ArrayList();  
  26.    items.add(item);  
  27. }  
抑制警告的关键字
关键字用途
allto suppress all warnings
boxing to suppress warnings relative to boxing/unboxing operations
castto suppress warnings relative to cast operations
dep-annto suppress warnings relative to deprecated annotation
deprecationto suppress warnings relative to deprecation
fallthrough to suppress warnings relative to missing breaks in switch statements
finally to suppress warnings relative to finally block that don’t return
hidingto suppress warnings relative to locals that hide variable
incomplete-switch to suppress warnings relative to missing entries in a switch statement (enum case)
nls to suppress warnings relative to non-nls string literals
nullto suppress warnings relative to null analysis
rawtypesto suppress warnings relative to un-specific types when using generics on class params
restrictionto suppress warnings relative to usage of discouraged or forbidden references
serialto suppress warnings relative to missing serialVersionUID field for a serializable class
static-accesso suppress warnings relative to incorrect static access
synthetic-access  to suppress warnings relative to unoptimized access from inner classes
unchecked to suppress warnings relative to unchecked operations
unqualified-field-accessto suppress warnings relative to field access unqualified
unusedto suppress warnings relative to unused code

参考:http://www.cnblogs.com/fsjohnhuang/p/4040785.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/451259.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mysql 替换字段的一部分内容

UPDATE 表名 SET 字段名 REPLACE( 替换前的字段值, 替换前关键字, 替换后关键字 ) WHERE 字段名 REGEXP "替换前的字段值"; 例子&#xff1a; UPDATE user SET mobile REPLACE( head_img, "http://7xswdm.com1.z0.glb.clouddn.com", "http://qiniu-i…

聊聊3种最常见的响应式设计问题

响应式设计方法对开发者非常有用&#xff0c;因为它使我们的内容在各种设备上广为传播。不用保留几个独立版本的网站&#xff0c;也可以摒除诸如缩放和流式布局这些方法的弊端。 缩放、流式布局与响应式 这些术语容易造成混淆&#xff0c;设计师常常错误地交替互用。实际上&…

PV、TPS、QPS是什么

pv 是指页面被浏览的次数&#xff0c;比如你打开一网页&#xff0c;那么这个网站的pv就算加了一次&#xff1b;tps是每秒内的事务数&#xff0c;比如执行了dml操作&#xff0c;那么相应的tps会增加&#xff1b;qps是指每秒内查询次数&#xff0c;比如执行了select操作&#xff…

AOP原理解析及Castle、Autofac、Unity框架使用

转自&#xff1a;https://www.cnblogs.com/neverc/p/5241466.html AOP介绍 面向切面编程&#xff08;Aspect Oriented Programming,英文缩写为AOP&#xff09;&#xff0c;通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。 AOP是OOP的延续&#xff0c;是软件…

bootstrap validator 提供了哪些验证函数

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 目前提供的校验方法有&#xff1a; "notEmpty" : "不能为空", "password" : "请输入正确的密码&q…

帕累托分布(Pareto distributions)、马太效应

什么是帕累托分布 帕累托分布是以意大利经济学家维弗雷多帕雷托命名的。 是从大量真实世界的现象中发现的幂次定律分布。这个分布在经济学以外&#xff0c;也被称为布拉德福分布。 帕累托因对意大利20%的人口拥有80%的财产的观察而著名&#xff0c;后来被约瑟夫朱兰和其他人概括…

两个class写在同一个java文件中

第一种&#xff1a; 一个public类&#xff0c;多个非public类&#xff0c;例如&#xff1a;public class A&#xff5b;&#xff5d;class B&#xff5b;&#xff5d;第二个class前面不能加public。 第二种&#xff1a; 第二种是内部类&#xff0c;写在公共类体里面的&#xff…

微信小程序的一些数据调用方式

1.模板数据的调用 一张图了解一下在wxml页调用预先定义好的模板&#xff1a; 可以看到上面调用了两个模板&#xff0c;数据调用却是不同的&#xff0c;obj是一个对象&#xff0c;对象内包含多个键值对形式的数据&#xff1b; tabbar是一个一维数组&#xff0c;每个数组项又都是…

手机厂商探路互联网:硬件高利润时代已成历史

华为消费者业务集团CEO兼终端公司董事长余承东近日出席“2012年全球移动互联网大会”期间证实&#xff0c;华为计划与奇虎360合作推出一款智能手机。 余承东表示&#xff0c;华为终端将尝试与多家互联网公司就智能手机业务展开合作&#xff0c;但他未透露与奇虎360合作的更多细…

解决:按截图 ctrl+alt+a QQ聊天窗口就自动最小化(QQ以外的可以截图)

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 一、问题如题 &#xff0c;想截图QQ聊天记录都不行 二、 解决方法&#xff1a; 如图找到QQ截图按钮&#xff0c;点击下拉倒三角&…

数据库备份DBS商业化发布

数据库备份DBS商业化发布将在2018年7月11日 15:00-16:00直播&#xff0c;敬请关注&#xff01; 数据库备份DBS为数据库提供连续数据保护、低成本的备份服务。 它可以为多种环境的数据提供强有力的保护&#xff0c;包括企业数据中心、其他云厂商及公共云。数据库备份提供数据备份…

堡垒机(跳板机)

堡垒机&#xff08;跳板机&#xff09;&#xff1f;现在一定规模互联网企业&#xff0c;往往都拥有大量服务器&#xff0c;如何安全并高效的管理这些服务器是每个系统运维或安全运维人员必要工作。现在比较常见的方案是搭建堡垒机环境作为线上服务器的入口&#xff0c;所有服务…

2018-09-18

12.1 LNMP架构介绍 和LAMP不同的是&#xff0c;提供web服务的是Nginx并且php是作为一个独立服务存在的&#xff0c;这个服务叫做php-fpmNginx直接处理静态请求&#xff0c;动态请求会转发给php-fpm12.2 MySQL安装 二进制免编译包安装 [rootlocalhost ~]# cd /usr/local/src/ [r…

举例说明Java中代码块的执行顺序

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 结论 这里先把整理好的结论抛给大家&#xff0c;然后我在写个程序来验证我们的结论。在Java类被new的过程中&#xff0c;执行顺序如…

Google 正式开源 Jib ,帮助 Java 应用快速容器化

Google 本周宣布开源一款新的 Java 工具 Jib &#xff0c;旨在让开发者使用他们熟悉的工具更轻松地将 Java 应用程序容器化。在7月9日发布的博客文章中&#xff0c;Google 软件工程师 Appu Goundan 和 Qingyang Chen 将 Jib 描述为一个容器镜像构建器&#xff0c;旨在处理将 Ja…

“公敌”京东:众同行将其拖入价格战

倒京东语录 当当网董事长李国庆&#xff1a; 京东的资金只能维持到8月至12月。当当网是赚一个花两个&#xff0c;而京东则是赚一个花四个。 苏宁电器董事长张近东&#xff1a; 我至今没有看见过哪个企业能通过这种方式取得最后胜利。这种违背正常商业逻辑的做法&#xff0c…

跨域与跨域访问

什么是跨域 跨域是指从一个域名的网页去请求另一个域名的资源。比如从www.baidu.com 页面去请求 www.google.com 的资源。跨域的严格一点的定义是&#xff1a;只要 协议&#xff0c;域名&#xff0c;端口有任何一个的不同&#xff0c;就被当作是跨域 为什么浏览器要限制跨域访…

thymeleaf 使用javascript定义数组报错

js中免不了的要用的数组&#xff0c;一维的二维的三维的 但是当用到thymeleaf作为模版时候会有一些坑&#xff0c;导致数组不能用 org.thymeleaf.exceptions.TemplateProcessingException: Could not parse as expression: "{checkbox: true, fixed: true}, {field: origi…

解决:Failed to execute goal on project aopcore: Could not resolve dependencies for project com.cmos:

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 一、问题描述 maven工程 jar包无法下载&#xff0c;报错如下 &#xff1a; [ERROR] Failed to execute goal on project aopcore: Cou…

从Xbox和Zune中学到的四门创业课

导读&#xff1a;微软前娱乐与设备部门总裁Robbie Bach领导他的团队&#xff0c;实现了Xbox的畅销。然而&#xff0c;他领导该部门推出的Zune音乐播放器&#xff0c;却没那么成功。从Robbie这两个经历中&#xff0c;我们们能学到什么&#xff1f;本文是Robbie自己的总结&#x…