程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA編程入門知識 >> Java中的Annotation解析之二(1)

Java中的Annotation解析之二(1)

編輯:JAVA編程入門知識

一、Java 中的Annotation的定義

Java中的Annotation

Java定義了幾個標准的meta-annotation,在新Package中java.lang.annotation 中包含了以下meta-annotation:

meta-annotation 說明

@Target 1. annotation的target是一個被標注的程序元素。target說明了annotation所修飾的對象范圍:annotation可被用於packages、types(類、接口、枚舉、annotation類型)、類型成員(方法、構造方法、成員變量、枚舉值)、方法參數和本地變量(如循環變量、catch參數)。在annotation類型的聲明中使用了target可更加明晰其修飾的目標。

meta-annotation 說明 @Target 1. annotation的target是一個被標注的程序元素。target說明了annotation所修飾的對象范圍:annotation可被用於packages、types(類、接口、枚舉、annotation類型)、類型成員(方法、構造方法、成員變量、枚舉值)、方法參數和本地變量(如循環變量、catch參數)。在annotation類型的聲明中使用了target可更加明晰其修飾的目標。
  
  2. ElementType的定義
  
  TYPE// Class, interface, or enum (but not annotation)

FIELD// Field (including enumerated values)
  
  METHOD// Method (does not include constrUCtors)
  
  PARAMETER// Method parameter
  
  CONSTRUCTOR// Constructor
  
  LOCAL_VARIABLE// Local variable or catch clause
  
  ANNOTATION_TYPE// Annotation Types (meta-annotations)
  
  PACKAGE// Java package

@Retention 1. SOURCE//按照規定使用注釋,但是並不將它保留到編譯後的類文件中
  
  2. CLASS//將注釋保留在編譯後的類文件中,但是在運行時忽略它
  
  3. RUNTIME//將注釋保留在編譯後的類文件中,並在第一次加載類時讀取它 @Documented Documented 表示注釋應該出現在類的 Javadoc 中 @Inherited 一個Annotation將被繼續

三個標准的Annotation 在java.lang包中:

@Deprecated 對不再使用的方法進行注釋 @Override 指明注釋的方法覆蓋超類的方法 @SuppressWarnings 阻止編譯器的警告,例:當類型不安全時

下例來說明這三個標准的Annotation:

package sz.starbex.bill.annotation;
  
  import java.util.ArrayList;
  
  import java.util.List;
  
  public class SimpleOverrideAnnotation {
  
  public static void main(String[] args) {
  
  SimpleOverrideAnnotation test = new SimpleOverrideAnnotation();
  
  System.out.println(test.toString());
  
  }
  
  @Override
  
  public String toString() {
  
  return "自己的類自己輸出";
  
  }
  
  @Deprecated
  
  public void doSomething() {
  
  System.out.println("方法已過時" );
  
  }
  
  @SuppressWarnings(value={"unchecked"})
  
  public void testSuppressWarnings(){
  
  List testList=new ArrayList();
  
  testList.add("KKKK");//沒有使用范型,類型不安全
  
  }
  
  }

更多的請看:http://www.QQread.com/windows/2003/index.Html

一、Java 中的Annotation的定義

Java中的Annotation

Java定義了幾個標准的meta-annotation,在新Package中java.lang.annotation 中包含了以下meta-annotation:

meta-annotation 說明


 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved