Java知識點總結(註解-自定義註解)

Java知識點總結(註解-自定義註解)

@(Java知識點總結)[Java, 註解]java

使用@interface自定義註解時,自動繼承了java.lang.annotation.Annotation接口code

要點:繼承

  1. @interface用來聲明一個註解:public @interface 註解名 {定義體}
  2. 其中的每個方法其實是聲明瞭一個配置參數, 方法的名稱就是參數的名稱
  3. 返回值類型就是參數的類型(返回值類型只能是基本類型,Class、String、Enumeration、Annotation)
  4. 能夠經過default來聲明參數的默認值
  5. 若是隻有一個參數成員,通常參數名爲value(), 在使用時能夠忽略成員名和賦值符號=
  6. 註解類能夠沒有成員,沒有成員的註解稱爲標識註解

注意:接口

  1. 註解元素必需要有值。咱們定義註解元素時,常用空字符串、0做爲默認值。
  2. 也常用負數(好比:-1)表示不存在的含義

示例:字符串

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
 
@Target(value={ElementType.METHOD,ElementType.TYPE}) //既能夠修飾方法,也能夠修飾類
@Retention(RetentionPolicy.RUNTIME) //運行時
public @interface MyAnnotation { //使用@interface 關鍵字定義註解
 
  String studentName();  //成員以無參無異常方式聲明。方法的名稱就是參數的名稱
  int age() default 18; // 能夠使用default爲成員指定一個默認值
  String[] schools();
}
public class Demo2 {
 
  @MyAnnotation(age=21,schools={"浙江大學","清華大學"},studentName="張三")
  public void test1() {
   
  }
}
相關文章
相關標籤/搜索