课程咨询 :0592-5903858 QQ:1079585464

厦门达内java培训

厦门Java培训 > 达内新闻 > java注解的特点和原理
  • java注解的特点和原理

    发布:厦门Java培训      来源:慕课社区      时间:2015-11-26


  •     达内java培训专家为大家讲解java注解的特点。

        一、什么是java注解? 
     
        Annotation(注解)就是Java提供了一种元程序中的元素关联任何信息和着任何元数据(metadata)的途径和方法。Annotion(注解)是一个接口,程序可以通过反射来获取指定程序元素的Annotion对象,然后通过Annotion对象来获取注解里面的元数据。 

        二、什么是元数据? 
     
        元数据是“关于数据的数据”的意思。 元数据的功能作用有很多,比如用Javadoc的注释自动生成文档,就是元数据功能的一种。元数据可以用来创建文档,跟踪代码的依赖性,执行编译时格式检查,代替已有的配置文件。元数据可以根据作用进行分类,大致可分为三类:  

        1.编写文档:通过代码里标识的元数据生成文档

        2.代码分析:通过代码里标识的元数据对代码进行分析

        3.编译检查:通过代码里标识的元数据让编译器能实现基本的编译检查

        在Java中元数据以标签的形式存在于Java代码中,元数据标签的存在并不影响程序代码的编译和执行,它只是被用来生成其它的文件或针在运行时知道被运行代码的描述信息。

        因此得出结论:

        1.元数据以标签的形式存在于Java代码中。

        2.元数据描述的信息是类型安全的,即元数据内部的字段都是有明确类型的。

        3.元数据需要编译器之外的工具额外的处理用来生成其它的程序部件。

        4.元数据可以只存在于Java源代码级别,也可以存在于编译之后的Class文件内部。

        三、注解的原理
     
        1.Annotation是一种接口,通过Java的反射机制相关的API来访问annotation信息。框架或工具中的类根据这些信息来决定如何使用该程序元素或改变它们的行为。

        2.annotation是不会影响程序代码的执行的。

        3.Java语言解释器在工作时会忽略这些annotation,只能通过配套的工具才能对这些annontaion类型的信息进行访问和处理。

        4.包 java.lang.annotation中包含所有定义自定义注解所需用到的原注解和接口。如接口 java.lang.annotation.Annotation 是所有注解继承的接口,并且是自动继承,不需要定义时指定,类似于所有类都自动继承Object。该包同时定义了四个元注解,Documented,Inherited,Target(作用范围,方法,属性,构造方法等),Retention(生命范围,源代码,class,runtime)。 

        四、应用场合
     
        1.生成文档。这是最常见的,也是java最早提供的注解。

        2.跟踪代码依赖性,实现替代配置文件功能。

        3.在编译时进行格式检查。

        五、注解分类 
     
        根据注解参数的个数,将注解分为三类:

        1.标记注解
        2.单值注解
        3.完整注解

        根据注解使用方法和用途,将注解分为三类:

        1.JDK内置系统注解
        2.元注解
        3.自定义注解

        JavaSE中内置三个标准注解,定义在java.lang中:

        @Override:用于修饰此方法覆盖了父类的方法;
        @Deprecated:用于修饰已经过时的方法;
        @SuppressWarnnings:用于通知java编译器禁止特定的编译警告。


    推荐文章

上一篇:7个对java最有影响的衡量标注

下一篇:java语言中byte转int的情况

最新开班日期  |  更多

Java--大数据周末班

Java--大数据周末班

开班日期:每周一

Java--大数据全日制班

Java--大数据全日制班

开班日期:每周一

Java--零基础周末班

Java--零基础周末班

开班日期:每周一

Java--零基础全日制班

Java--零基础全日制班

开班日期:每周一

  • 地址:厦门软件园二期望海路59号之一401达内科技
  • 课程培训电话:0592-5903858 QQ:1079585464     全国服务监督电话:400-827-0010
  • 服务邮箱 ts@tedu.cn
  • 2001-2016 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56