自定義Java註解(annotation)

https://www.imooc.com/learn/456  筆記java

Java從1.5開始引進註解。框架

首先解決一個問題,爲何要學習Java註解?ide

1.看懂別人寫的代碼,尤爲是框架的代碼學習

2.能夠是本身寫的代碼簡潔清晰spa

 

如今開始學習Java註解了。code

 

1、JDK自帶註解blog

1. @Override : 覆蓋,繼承父類、實現接口重寫方法時使用繼承

2. @Deprecated : 過期,使用以後再使用這個方法會有刪除線接口

3. @SuppressWarnings : 過濾提示get

 

2、註解分類

1. 根據運行機制分: 源碼註解、編譯時註解、運行時註解

2. 根據來源分: JDK註解、第三方註解、自定義註解

3. 元註解 : 註解的註解,自定義註解時使用

 

3、自定義註解

1. 語法要求

  a. 使用 @interface 定義

  b. 成員以無參無異常的方式聲明

  c. 能夠使用default爲成員設置默認值

  d. 成員類型包括 基本數據類型,String,Class,Annotation,Enumeration

  e. 只有一個成員時,名稱必須爲value,使用時能夠忽略=

  f. 註解類能夠沒有成員,稱爲標識註解

  代碼示例  

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

@Target({ElementType.TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Inherited
@Documented
public @interface Customize {
    String value() default "I am annotation";
}

 2. 註解的使用

  @註解名(<成員名1>=<成員值1>,<成員名2>=<成員值2>,<成員名3>=<成員值3>,......)

3. 解析註解

  解析註解須要用到反射,因此在反射裏再寫吧。

相關文章
相關標籤/搜索