注解

 * 注解

   * 概述 :从Java核心内容到JavaEE,一路都可以使用注解方式完成.

   * 作用:主要就是用来替代xml的配置文件.

   * 存在的位置:在对应的Java类中.
   * 使用的范围:用于修饰包,类,构造器,方法,成员变量,参数和局部变量的声明.
    * 存储形式:key\value形式.

   * 注意:不影响原本的代码执行.


   * 注解与XML的区别:
    * 注解:
             * 优点:
                        * 直观,简单.
                     * 配置方式容易.
            * 缺点:
                       * 配置信息相对过于零散.
               * 修改过于麻烦(重新编译)
     * XML:
              * 优点:
                        * 与Java类逻辑的关系低耦合.
                * 复用性:可重复使用
               * 修改很简单(不用编译)
               * 缺点:
                       * 编写过于复杂.
               * 解析操作过于复杂.

   * Java中提供三个基本注解:

       @Override:

                限定重写父类方法

                用处:当一个类继承于另一个类,并重写其提供的方法时.


       @Deprecated:

                标示已过时

                作用:保证软件或系统版本更新,对版本的兼容性(新版本只能增加内容,不能修改及删除).


       @SuppressWarnings:

                  抑制编译器警告

                 范围:作用在类、方法、成员变量等.


   * 自定义注解:

            * 使用关键字 @interface.
            * 定义属性:
                       * 语法:类型 属性名称();
            * 使用属性时:
                          * @注解名称(属性名=属性值,属性名=属性值,...)
     * 一旦自定义注解时,定义属性:一定是必要属性.

     * 支持的类型:基本类型、String、Enum、Class及上述类型的一维数组类型.

       * 注意:
           * 如果自定义注解,只定义value属性(没有任何其他属性)
     String value();
* 使用该注解时,可以省略"value="(可以直接指定属性值,而不定义属性名)

    @MyAnno("")


规定一个自定义注解,设定其可以使用的范围:

       @Target注解:

                * 作用: 用于修饰自定义注解.
                  
                 * 用于指定该自定义注解允许修饰Java类的哪个部分(类、成员变量、方法等).

                * 该注解包含ElementType类型的value属性.


      @Retention注解:

                 * 作用: 用于修饰自定义注解.

                 * 指定该自定义注解的生命周期.(生命周期 - SOURCE、CLASS、RUNTIME)


 通过反射读取注解:

      * 前提:自定义注解只能是RUNTIME.


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值