(29条消息) JavaEE进阶(12) 四大内置注解@Override、@Deprecated、@SuppressWarnings、@SafeVarargs

Java中的四大内置注解:          ==> 标记程序  给予特殊意义

1.@Override : 验证方法是否在覆写
2.@Deprecated : 标记方法、类...等是否过时 
3.@SuppressWarnings: 标记 内容抑制警告
4.@SafeVarargs: 标记 抑制堆污染警告
       什么时候会出现对堆污染警告?? ==》 使用泛型+可变参数的时候就会出现对污染【警告】
       堆污染警告,仅仅是警告 而已,并不代表不能用
       为什么会出现堆污染警告,以及堆污染可能出现什么问题
             例如:堆中添加各种类型的数据杂乱:classCastException
             不能够创建泛型数组  :创建数组必须要有具体的类型,【数组就是存储空间】
        这个堆污染警告,是后面才专门加的一个 注解,原来用@SuppressWarings
  
Java中可以标记的位置:类[字段,构造方法,普通方法,局部变量] 接口 枚举

ex:

/** * Java中的四大内置注解:   ==>标记程序  给予特殊意义 * 1.@Override : 验证方法是否在覆写 * 2.@Deprecated : 标记方法、类...等是否过时  * 3.@SuppressWarnings: 标记 内容抑制警告 * 4.@SafeVarargs: 标记 抑制堆污染警告 * 	      什么时候会出现对堆污染警告?? ==》 使用泛型+可变参数的时候就会出现对污染【警告】 *     堆污染警告,仅仅是警告 而已,并不代表不能用 *     为什么会出现堆污染警告,以及堆污染可能出现什么问题 *            例如:堆中添加各种类型的数据杂乱:classCastException *            不能够创建泛型数组  :创建数组必须要有具体的类型,【数组就是存储空间】 *     这个堆污染警告,是后面才专门加的一个 注解,原来用@SuppressWarings *  * java中可以标记的位置:类[字段,构造方法,普通方法,局部变量] 接口 枚举 * @author 郑清 */public class AnnotationDemo { 	@Override  //验证方法是否在覆写	public String toString() {		// TODO Auto-generated method stub		return super.toString();	}	@Deprecated  //标记方法、类...等是否过时 	private void add() {		// TODO Auto-generated method stub 	}	//@SuppressWarnings({ "rawtypes", "unused" })  //标记 内容抑制警告	private void getList() {		// TODO Auto-generated method stub		@SuppressWarnings({ "rawtypes", "unused" })  //标记 内容抑制警告		List list;	}	@SuppressWarnings("unused")  //标记 内容抑制警告	@SafeVarargs //标记 抑制堆污染警告	private static <T>T useVarargs(T...args) {		// TODO Auto-generated method stub		return args.length > 0 ? args[0] : null;	} }

 


---------------------
作者:郑清
来源:CSDN
原文:https://blog.csdn.net/qq_38225558/article/details/82728402
版权声明:本文为上一个作者原创文章,转载请附上博文链接请询问郑清!

上一篇:java – 哪个集合 – 每个操作的分裂器都在迭代?


下一篇:注解入门