注解的基本介绍

注解

注解是Java中一个常用到的标记语言,它是JDK1.5之后出现的新特性,它可以给类携带一些信息,在日常用到的框架配置中很常见到.
如在方法重写的时候就经常看到@Override这个注解,已经我们的开发工具经常出现的警告,还可以通过@SuppressWarnings来抑制编译器警告等
但是注解还是可以用来存储数据的就和XML文档类似,做为配置文件,name就要涉及到自定注解的一个使用了
自定一个注解跟接口的创建很相似

public @interface Annotations
{
        String item();//这里的是属性,默认前缀修饰是public abstract
}

注意点: 如果写了注解的属性在使用的时候必须要写上属性否则编译是不通过的

@Annotations(item="清单")
public void test(){}

元注解: 用来修饰注解的注解,有点跟XML的约束文件相似

//举例几个常用的元注解
@Target
@Retention
@Document   //用来在API文档中的方法中显示注解
@Target(ElementType.TYPE)   //这里会涉及到一个ElementType接口,这个注解的用途是限       //定注解的使用范围
@Retention(RetentionPolicy.RUNTIME)//这里也是使用到了RentionPolicy接口,三个常见//字段API文档可以查到,这是用来限制注解的生命周期的,注解默认在字节码时期,如果要想存储数据并且运行可以使用,就要做一个处理

注解的解析
涉及到两个接口:Annotation接口;AnnotatedElement接口,观察API可以发现,所有的注解都是默认实现了Annotation接口也就是子类,AnnotatedElement是注解的一些常用功能的集合,实现了该接口的类,都可以获取类中的注解及注解的属性

//一个重要概念,在获取注解的时候,想要获取程序上某一个元素的注解属性,就用该元素来调用
Annotation[] annos = Method.getAnnotations();

注解几个常用的方法:

Annotation anno getAnnotation(Class Annotation);    //获取指定的注解
Annotation[] annos getAnnotations();    
Annotataion[] decAnnos  getDeclaredAnnotations();
isAnnotationPresent(Class Annotation)   //判断是否存在指定的注解   
//具体的使用大家自己做个测试就好,使用并不难
//说下getAnnotations 和 getDeclaredAnnotations的区别,和反射相似,一个可以获取所有的包含父类的,一个获取本类所有,但是要想获得父类的有个前提,因为注解是默认不能被继承的,如果想要获得父类,需要在自定义注解的时候给注解加个元注解声明@Inhered.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值