Annotation: 使用
通常,应用程序并不是必须定义annotation类型,但是定义annotation类型并非难事。
Annotation类型声明与一般的接口声明极为类似,区别只在于它在interface关键字前面使用”@“符号。
?
Annotation类型的每个方法声明定义一个annotation类型成员,但方法声明不必有参数或异常声明;
方法返回值类型被限制在以下范围:private、String、Class、enums、annotation和前面类型的数组;方法可以有默认值。
?
一个简单的annotation类型声明:
import java.util.List;public class UsingBuiltInAnnotation { //食物类 class Food{} //干草类 class Hay extends Food{} //动物类 class Animal{ Food getFood(){ return null; } //使用Annotation声明Deprecated方法 @Deprecated void deprecatedMethod(){ } } //马类-继承动物类 class Horse extends Animal{ //使用Annotation声明覆盖方法 @Override Hay getFood(){ return new Hay(); } //使用Annotation声明禁止警告 @SuppressWarnings({"deprecation","unchecked"}) void callDeprecatedMethod(List horseGroup){ Animal an=new Animal(); an.deprecatedMethod(); horseGroup.add(an); } }}?
2、开发者自定义Annotation,由开发者自定义Annotation类型
3、使用第三方开发的Annotation类型
开发人员所常常用到的一种方式,比如我们使用Hibernate3.0时就可以利用Annotaion生成数据表映射配置文件。