注解技术

来源:互联网 发布:csgo 性能数据 编辑:程序博客网 时间:2024/05/17 07:07

注解是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());

//同理

 

}

}

其实注解不仅可以坐作用于类也可以坐拥包,方法,属性。