public @interface xxx 定義註解

鴻蒙道發表於2018-07-06


@interface 不是interface,是註解類 
是jdk1.5之後加入的,java沒有給它新的關鍵字,所以就用@interface 這麼個東西表示了 
這個註解類,就是定義一個可用的註解,包括這個註解用於什麼地方,是類,還是方法,還是property,還是方法入參等等

@Retention(RetentionPolicy.RUNTIME)  // 註解會在class位元組碼檔案中存在,在執行時可以通過反射獲取到

@Target:註解的作用目標
        
        @Target(ElementType.TYPE)   //介面、類、列舉、註解
        @Target(ElementType.FIELD) //欄位、列舉的常量
        @Target(ElementType.METHOD) //方法
        @Target(ElementType.PARAMETER) //方法引數
        @Target(ElementType.CONSTRUCTOR)  //建構函式
        @Target(ElementType.LOCAL_VARIABLE)//區域性變數
        @Target(ElementType.ANNOTATION_TYPE)//註解
        @Target(ElementType.PACKAGE) ///包   

相關文章