注解是jdk1.5后的新特性。未来的框架都是会采用注解技术的。所以注解技术是非常主要的。
我对注解的理解是:,可以控制程序的一些行为,运行时的状态,可以为成员赋值,做配置信息等等。
采用注解可以提高程序的灵活性。
下面我写一个注解的实例。
首先你给写一个注解类
这个类是A.java
packagecom.fish;
importjava.lang.annotation.ElementType;
importjava.lang.annotation.Retention;
importjava.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Retention(RetentionPolicy.RUNTIME)//这句话说明这个注解要运行时候有效。还有其他状态,RetentionPolicy.SOURCE被废弃的注解,RetentionPolicy.CLASS在编译的时候有效
@Target({ElementType.TYPE,ElementType.METHOD})//这句话说我们可以将这个注解作用于类或者方法。
public @interface A { //注解类似接口,有个@是重要的标志
Stringcolor() default "blue"; //这是一个注解的一个属性,default //是对让该属性有个默认值。
Stringvalue();//如果没有默认值在使用的时候必须給值。
}
下面我们写一个测试的类
packagecom.fish;
@A(value="fish")//因为value为空所以必须得value属性給值。当然我们也可以为color重新赋值。
public class MyClass {
public static void main(String[] args) {
System.out.println(MyClass.class.isAnnotationPresent(A.class));//我们知道在运行的时候可以可以知道该注解已经作用在该类型上了。
System.out.println(MyClass.class.getAnnotation(A.class).color());
//可以或得该注解的属性的值。 System.out.println(MyClass.class.getAnnotation(A.class).value());
//同理
}
}
其实注解不仅可以坐作用于类也可以坐拥包,方法,属性。