搜尋
首頁JavaJava入門java基礎之註解

java基礎之註解

Nov 27, 2019 pm 04:51 PM
java註解

java基礎之註解

1、元註解

1.1 @Target

【作用】

用於指定標註的註解可以使用的位置,例如:@Target(ElementType.METHOD):表示可以使用在方法上,其他結構不能使用;@Target({ElementType .METHOD, ElementType.TYPE}):表示可以使用在方法和介面、類別、枚舉上。

相關線上影片教學:java課程

1.2 @Retention

【作用】

用於指定所標註的註解保留階段,註解共有三個值:

@Retention(RetentionPolicy.SOURCE):表示保留到原始程式碼階段,編譯後消失

@Retention(RetentionPolicy.CLASS):表示保留到編譯階段,運行後消失

@Retention(RetentionPolicy.RUNTIME):表示保留到執行階段,若要透過反射讀取註解訊息,需要指定該註解保留階段為RUNTIME

1.3 @Inherited

【作用】

#表示這個註解是否可以被子類別繼承。

1.4 @Documented

【作用】

表示這個註解是否可以被 Javadoc 讀取到文件中。

2、註解宣告

【格式】

#【元註解】

【修饰符】 @interface 注解名 { 注解体 }

【範例】

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface MyAnnotation {
}

3、設定參數宣告

【格式】

【数据类型】 参数名() default 默认值;

default 預設值:在需要設定預設值時,可以加,需要設定時,不用寫;

資料類型只能是:基本資料型態、String、Class、enum、Annotation,及以上所有類型的一維數組。

如果參數成員只有一個或使用頻率較高的參數可以定義參數名稱為:value,在使用註解時,若參數名稱為 value 可以省略,則直接寫輸入的值。

【範例】

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface MyAnnotation {
String name() default "";
}

4、讀取註解訊息

只有註解標註@Retention(RetentionPolicy.RUNTIME) 才能透過反射讀取。

讀取註解資訊透過反射讀取,具體如下:

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

public class TestInterface {
    public static void main(String[] args) {
        MyAnnotation myAnnotation = MyClass.class.getAnnotation(MyAnnotation.class);
        String value = myAnnotation.value();
        System.out.println(value);
    }
}

@MyAnnotation
class MyClass {}

@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@interface MyAnnotation {
    String value() default "我是一个注解";
}

輸出結果:

java基礎之註解

##相關文章教學推薦:

java入門學習

以上是java基礎之註解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:CSDN。如有侵權,請聯絡admin@php.cn刪除

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),