亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java注解(聞過)

發布時間:2020-04-05 12:23:56 來源:網絡 閱讀:4415 作者:Red_Ant_hoyl 欄目:開發技術

注解就如同標簽一樣。

1、注解的定義

//注解的定義,相當于創建了一個名字為Frozen的標簽
    public @interface Frozen{}

2、注解的應用

上面我們定義了一個注解標簽
下面我們將標簽貼在方法上

@Frozen
public static void getSomthing(){}

將標簽貼在類上

@Frozen
public class UseZhujie {

}

3、注解的工作原理

上面我們創建了注解,并把他貼在了某處,但是這貨是怎么工作的呢?

首先呢,我們必須先了解元注解。
所謂元注解,在筆者看來就是注解的基本組成部分,元注解組成注解,是注解里的基本單位。

【5種元注解】
A、@Retention
這個注解就是確定注解的存活時間的,也就是常說的生命周期。

RetentionPolicy.SOURCE
注解只在源碼階段保留,在編譯器進行編譯時它將被丟棄忽視。
RetentionPolicy.CLASS
注解只被保留到編譯進行的時候,它并不會被加載到 JVM 中。
RetentionPolicy.RUNTIME
注解可以保留到程序運行的時候,它會被加載進入到 JVM 中,所以在程序運行時可以獲取到它們。

B、@ Documented
它會被 javadoc 之類的工具處理, 所以注解類型信息也會被包括在生成的文檔中,是一個標記注解,沒有成員。
C、@ Target
限制注解的應用場景,就是規定當前的注解可以貼在什么地方
ElementType.ANNOTATION_TYPE
可以給一個注解進行注解
ElementType.CONSTRUCTOR
可以給構造方法進行注解
ElementType.FIELD
可以給屬性進行注解
ElementType.LOCAL_VARIABLE
可以給局部變量進行注解
ElementType.METHOD
可以給方法進行注解
ElementType.PACKAGE
可以給一個包進行注解
ElementType.PARAMETER
可以給一個方法內的參數進行注解
ElementType.TYPE
可以給一個類型進行注解,比如類、接口、枚舉
D、@ Inherited
繼承,也就是說。
ClassA的注解被@Inherited修飾之后,假設ClassB extends ClassA 那么ClassB也具有與ClassA被修飾過的一樣的注解了。
E、@ Repeatable
Java1.8新特性

4、注解的屬性

public @interface Frozen{
    String frozen();
    int redant();
}

//應用剛創建的注解
@Frozen(frozen = "hoyl", redant = 0)
public static void getSomthing(){}

可以添加屬性默認值

public @interface Frozen{
    /*  String frozen();
        int redant();*/
        //可以設置默認值
        String frozen() default "Frozen";
        int redant() default 100;
    }

這樣被貼標簽的就不用了賦值了

//@Frozen(frozen = "hoyl", redant = 0)
@Frozen
public static void getSomthing(){}

5、Java預置注解

這些呢,大多數是編譯器自動感知。然后報警告,提示自動添加的。
@ Deprecated
這是告訴開發者,調用的東西過時了

Java注解(聞過)
@ Override
想重寫父類的方法
@ SuppressWarnings
一些警告
@ SafeVarargs
阻止編譯器產生 unchecked警告
@ FunctionalInterface
1.8新特性

6、注解有啥用?

1、生成文檔。
2、跟蹤代碼依賴性,實現替代配置文件XML功能。
3、在編譯時進行格式檢查。

向AI問一下細節

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

AI

贵州省| 体育| 永吉县| 醴陵市| 彰化县| 肃宁县| 通化市| 灵寿县| 高平市| 思茅市| 茌平县| 东乡| 栾川县| 康保县| 沙雅县| 蒙阴县| 历史| 桐乡市| 阿勒泰市| 鄂托克前旗| 靖安县| 周至县| 壶关县| 嘉善县| 扎赉特旗| 呼伦贝尔市| 宜阳县| 宣恩县| 珠海市| 济阳县| 涿鹿县| 琼结县| 南昌县| 大名县| 宜君县| 象山县| 互助| 岳普湖县| 大英县| 沽源县| 固镇县|