1. <s id="4jtld"></s>
    1. <span id="4jtld"><meter id="4jtld"></meter></span>

        <span id="4jtld"></span>
      1. <s id="4jtld"><noscript id="4jtld"><i id="4jtld"></i></noscript></s>
        溫馨提示×

        Java中注解學習系列教程-2

        發布時間:2020-06-13 10:35:47 來源:網絡 閱讀:195 作者:凱哥Java 欄目:編程語言

        在上一篇文章中,我們講解了:Java中注解的定義、JDK中內置注解、第三方注解。

        本文是注解系列教程中的第二篇。來看看今天主要內容:

        0e5bfb282785e6d50be398c29a4d9267.png

        1:注解的分類

        2:元注解說明

        3:自定義注解聲明

        一:注解的分類

        c03d16d65e241c90e669f077a650bb64.png

        注解根據運行機制、來源、功能來分:

        1.1:按照運行機制來分,即時注解存在于程序的哪個階段

        e0c7d7da2e69a56219d73cd8be1c4454.png

        源碼注解(source):在源碼中存在的。

        如:lombak的@data注解:

        5bea68c9466087e5e29d6a07d6243893.png

        編譯注解(class):編譯期。既是在源碼和class中都有的。

        JDK自帶的三個注解(@Override(重寫、覆蓋)、@Deprecated(廢棄的,過時的)、@Suppvisewarnings(壓縮警告))都是編譯期的注解

        舉例: override

        0362f1164684a55d250ef62a5774a78a.png

        運行是注解(runtime):在運行階段任然起作用的,甚至會影響運行邏輯。

        如:spring 的autowired注解:

        f39084e8c5e64a0834714f102eca9160.png1.2:按照來源來區分,既是注解從哪里來的

        按照來源來區分分為:JDK自帶的注解、第三方注解、自定義注解

        如下圖:

        e53b73770958773c2e330afeeb8c1007.png

        1.3:按照功能來區分:

        按照功能來區分,可以分為:元注解和非元注解。如下圖:

        afafe3546c589b9575096a6827d8b692.png

        二:元注解說明

        2.1:什么是元注解?

        元注解是指注解的注解。JAVA中元注解主要包括以下四個:

        7ac1431ceef05b2463a25ba3da4a9cd7.png

        2.2:@Target

        target注解的作用:標注注解的作用域。如果有多個作用域用英文逗號進行分割

        target注解作用域有哪些?

        構造器、字段、局部變量、方法、包、參數、接口。具體如下圖:

        f04c44ad40c7473701ac705c2bbfd82d.png

        e6e365e0dbc15a00bebd6df6df9def1a.png

        2.3:@Retention

        retention的作用:注解的生命周期。

        注解生命周期有哪些呢?

        只在源碼顯示的souce、編譯期的class、運行時候存在的runtime。如下圖:

        b19e1e745582b64fb7031b7e68f3e3c3.png

        生命周期大?。?/p>

        4dc0e0c220fc15304fe3ab2bb5460028.png

        2.4:@Inherited

        inherite:標識性的元注解。標識當前的注解可以由子注解繼承

        de34f5ca04abc46443777f3f189cce47.png

        2.5:@Documented

        documented:在生成文檔的時候,會被包含

        cbb4bfcc5975de05f4f84e3ebd1f28b6.png

        三:自定義注解的寫法:

        @Target({ElementType.METHOD, ElementType.FIELD})@Retention(RetentionPolicy.RUNTIME)
        br/>@Retention(RetentionPolicy.RUNTIME)
        br/>@Documented()

        public abstract String value();

        }
        9c58e2d4fa3ef4e29cf4a65c78ab272d.png

        聲明:本文是由凱哥(凱哥Java)發布的Java注解學習系列教程第二篇。未經允許,不得轉載

        本文出處:http://www.kaigejava.com/article/detail/440

        凱哥博客:www.kaigejava.com

        凱哥公眾號:凱哥Java(kaigejava)

        免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

        主題地圖

        欧美午夜理伦三级在线观看,欧美午夜乱伦片,欧美午夜乱色视频在线观看,欧美午夜免费一区二区,欧美午夜片欧美片在线观看