1、概述:
注解是JDK6.0以上版本新增加的一项功能它可以添加到程序的任何元素(如包声明、类型声明。构造方法、方
法、成员变量等)上用来设置一些说明和解释。
访问和处理注解的工具统称APT(Annotation Processing Tool)。
2、JDK内置的基本注解类型:
@SuppressWarnings(value={"unchecked"})。
(2)重写Override:
import java.awt.List;
import java.util.*;
public class OverrideTest {
public static void main(String[] args) {
SubClass sub = new SubClass();
sub.superMethod();
}
}
class SuperClass{
public void superMethod(){
System.out.println("SuperMethod");
}
}
class SubClass extends SuperClass{
@Override//注解可以在重写中找错误(只针对当前的位置的
方法)
public void superMethod(){
System.out.println("subMethod");
}
}
(3)警告Deprecated:是一种标记已过时成员的注解类型,用来指明被注解的方法是一个过时的方法,不建
议使用了。还有一个作用,就是如果一个类从另外一个类继承,并且重写了被继承类的Deprecated方法
public class DeprecatedTest{
@Deprecated
public void myMethod(){
System.out.println("Deprecated注解类型来标识一
个成员已经过时");
}
public static void main(String args[]){
DeprecatedTest dt = new DeprecatedTest();
dt.myMethod();
}
}
(4)抑制警告SuppressWarnings:是一种抑制编译警告的注解类型,用来指明被注解的方法、变量活类在编
译时如果有警告,就阻止警告。
import java.awt.List;
import java.util.*;
public class OverrideTest {
@SuppressWarnings("deprecation")
public static void main(String[] args) {
SubClass sub = new SubClass();
sub.superMethod();
@SuppressWarnings("unused")
int a ;
List list = new ArrayList();
list.add("xxx");
System.runFinalizersOnExit(true);
}
}
(5)自定义注解类型:@interface还有枚举类型
public class UserAnnotation {
@MyAnnotation
//@MyAnnotation1(value ="abc",a=12,c="ab")
@MyAnnotation1(value ="abc",st1=Status.active)
public static void main(String[] args) {
System.out.println("自定义注解一");
}
}
@interface MyAnnotation{
}
enum Status{active,inactive}
@interface MyAnnotation1{
String value();
//int a();
//String c();
Status st1();
Status st()default Status.inactive;
}