初始Java注解
文章目录
一、注解的概念、
二、注解的分类
三、内置注解
一、注解的概念
简单的来说,注解就是一种特殊的标志,可以标注源代码中的类、属性、方法、参数等代码
二、注解的分类
注解按照是否含有参数分为三种,如
没有参数的注解
@Overrid
public class Person {
public static void main(String[] args) {
int age = 10;
}
}
只有一个参数,语法结构为:@Annotiation(参数)
public class Person {
@SuppressWarnings("unused")//参数只有一个,表示该属性在方法或类中没有使用。添加此注解可以去除属性上的黄色警告!!!
private String name;
}
多个参数注解,语法结构为:@Annotiation(参数1, 参数2,参数3...),多个参数之间以逗号分隔
public class Person {
public static void main(String[] args) {
Date date = new Date();
@SuppressWarnings({ "unused", "deprecation" }) //两个参数的注解,result在程序中没有用到,会有黄色警告,以及getHours()过时也会有黄色的警告,因此加上这个注解消除警告
int result = date.getHours();
}
}
三、内置注解
1、@Override被用于标注方法,用于说明所标注的方法是重写父类的方法
2、@Deprecated 用于说明所标注元素(成员变量或方法)因存在安全问题或有更好选择而不鼓励程序员使用,如果强行使用,则编 译器会发出警告。
public class Test {
public static void main(String[] args) {
Date date = new Date();
int hour = date.getHours();//该方法已经被@Deprecated注解标记
date.getMinutes();
System.out.println(hour);
Calendar calendar = Calendar.getInstance();//解决办法,鼠标点中被@Deprecated注解标记的方法,根据提示进行修该,这里按住Ctrl键,点击getHours(),根据replace的信息进行更改
hour = calendar.get(Calendar.HOUR_OF_DAY);
}
}
鼠标Ctrl+getHours(),出现下图:
3、@SuppressWarnings用于取消编译器所显示的警告,该注解常用属性值如下:
@SuppressWarnings("serial")//取消在可序列化的类上缺少serialVersionUID定义产生的警告
public class Test implements Serializable{
}