1.註解與註釋java
2.註解的組成部分數組
3.基本註解ide
4.自定義註解spa
註釋:用於在源代碼中解釋代碼的功用,能夠加強程序的可讀性,可維護性,或者用於在源代碼中處理不需運行的代碼段,來調試程序的功能執行。調試
註解: 對於包、類、屬性、方法輔助說明做用, 註解的添加不會影響java程序的執行,java中註解是可以被計算機編譯的,能參與到程序的運行中。code
它們的區別顯而易見,註釋只是解釋說明,不算作源代碼,註解則算做源代碼。blog
註解由一下部分組成繼承
1.修飾符 ----- public 默認(不寫就是默認)接口
2.@interface ------ 用來聲明註解的生命週期
3.參數類型 ----- 8種基本數據類型 String Class 以及他們的數組 枚舉
4.默認值 ---- default 無關緊要
1.常見註解
一、@Override 表示子類重寫父類的方法
二、@Deprecated 表示已過期
三、@SuppressWarnings 消除警告
四、@FunctionalInterface java8新特性,保證一個
接口中只能聲明一個方法
2.元註解
元註解也是一種註解,它是用來輔助說明註解的
一、@Target
用來講明註解的使用範圍
ElementType 枚舉類中有說明
TYPE:聲明能夠用在類、接口、註解上
Field:用在屬性上
METHOD:用在方法上
CONSTRUCTOR:用在構造方法上
二、@Retention
用來講明註解的生命週期
RetentionPolicy.
SOURCE: 註解只保留在源代碼中
CLASS:註解保留在CLASS文件中,JVM加載類後
就被丟棄掉
RUNTIME:保留至程序運行時,這個時候能夠經過反射
獲取註解信息
三、@Documented 經過javadoc生成API文檔時可用到
四、@Inherited :子類對父類的註解繼承
package com.demo.annotation; 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 public @interface MyAnnotation { public String name() default "HYS"; int age(); Sex sex(); String[] hobby(); boolean isJavaDev() default true; }