1. 程式人生 > >Java中常見的註解

Java中常見的註解

ise rri 自帶 com doc ret not article 標識

Java中常見的註解
[email protected] @Deprecated @Suppvisewarnings
常見第三方註解
Spring:@Autowired @Service @Repository
Mybatis:@InsertProvider @UpdateProvider @Options

註解的分類:
依照執行機制分:
源代碼註解:註解僅僅在源代碼中存在,編譯成.class文件就不存在了;
編譯時註解:註解在源代碼和.class文件裏都存在(JDK自帶的三個註解(@Override @Deprecated @Suppvisewarnings)屬於編譯時註解,僅僅在編譯時起作用)
執行時註解:在執行階段還起作用。甚至會影響執行邏輯的註解(@Autowired)
依照來源分:
來自JDK自帶的註解
第三方註解
我們自己定義的註解

源註解:註解的註解


package com.ann.自己定義註解;

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.METHOD,ElementType.TYPE})//註解作用範圍:方法、類接口
@Retention(RetentionPolicy.RUNTIME)//註解生命周期:SOURCE CLASS RUNTIME
@Inherited//(標識性的原註解)同意子類繼承
@Documented//生成javadoc時會包括註解
[email protected]
/* */,表示定義的不是類也不接口 public @interface Description { //成員以無參數無異常方式聲明 //成員類型是受限的,合法的類型包括原始類型以及String Class Annotation Enumeration //大部分自己定義的註解用原始類型和String就足夠了 //假設註解僅僅有一個成員,則成員名必須取名為value(),在使用時能夠忽略成員名和賦值號(=) //註解類能夠沒有成員。沒有成員的註解稱為標識註解 String desc(); String author(); int age() default 18;//能夠用default為成員制定一個默認值 }


Java中常見的註解