Java Annotation詳解及實例代碼
一、Annotation簡介
- 從Java1.5開始,Java增加了元數(shù)據(jù)(MetaData)的支持,也就是Annotation(注釋);
- Annotation能被用來為程序元素(類、方法、成員變量等)設置元數(shù)據(jù);
- Annotation不能影響程序代碼的執(zhí)行,無論添加、刪除Annotation,代碼始終如一的執(zhí)行;
- 如果希望讓程序中的Annotataion能在 運行時其一定作用,只有通過某種配套的工具對Annotation中的信息進行訪問和處理,這些工具統(tǒng)稱APT(Annotion Processing Tool);
二、三個基本的Annotation如下:
@Override:限定重寫父類方法
- 用來指定方法覆蓋的,它可以強制一個子類必須要覆蓋父類的方法;
- 只能用作于方法,不能用于作用其他程序元素;
- 主要是幫助我們避免一些低級錯誤;
public class Fruit { public void foo(){ System.out.println("水果的info方法。。。"); } } class Apple extends Fruit { //使用@Override指定下面方法必須重寫父類方法 @Override public void foo() { System.out.println("蘋果重寫水果的info方法..."); } }
@Deprecated:標記已過時
用于標識某個程序元素(類、方法等)已過時,當其他程序使用已過時的類、方法時,編譯器將會給出警告;
class Apple1{ //定義info方法已經(jīng)過時 @Deprecated public void info(){ System.out.println("Apple的info方法"); } } public class DeprecatedTest { public static void main(String[] args) { //下面使用info方法時將會被編譯器警告 new Apple1().info(); } }
@SuppressWarnings:抑制編譯器警告
- 指示被Annotation標識的程序元素(以及在該程序元素中的所有字元素)取消顯示指定的編譯器警告;
- 一直作用于該程序元素的所有子元素;
//關閉整個類里的編譯器警告 @SuppressWarnings(value="unchecked") public class SuppressWarningsTest { @SuppressWarnings("rawtypes") public static void main(String[] args) { List<String> myList = new ArrayList(); myList.add("java"); } }
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關文章
SpringValidation自定義注解及分組校驗功能詳解
這篇文章主要介紹了SpringValidation自定義注解及分組校驗功能,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧2024-01-01Java動態(tài)規(guī)劃方式解決不同的二叉搜索樹
二叉搜索樹作為一個經(jīng)典的數(shù)據(jù)結構,具有鏈表的快速插入與刪除的特點,同時查詢效率也很優(yōu)秀,所以應用十分廣泛。本文將詳細講講二叉搜索樹的原理與實現(xiàn),需要的可以參考一下2022-10-10Spring MVC返回的json去除根節(jié)點名稱的方法
這篇文章主要介紹了Spring MVC返回的json去除根節(jié)點名稱的方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-09-09PowerJob的TransportServiceAware工作流程源碼解讀
這篇文章主要介紹了PowerJob的TransportServiceAware工作流程源碼解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2024-01-01SpringBoot啟動流程SpringApplication準備階段源碼分析
這篇文章主要為大家介紹了SpringBoot啟動流程SpringApplication準備階段源碼分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-04-04Java異步編程之Callbacks與Futures模型詳解
這篇文章主要為大家詳細介紹了Java異步編程中Callbacks與Futures模型的使用,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下2023-03-03百度翻譯API使用詳細教程(前端vue+后端springboot)
這篇文章主要給大家介紹了關于百度翻譯API使用的相關資料,百度翻譯API是百度面向開發(fā)者推出的免費翻譯服務開放接口,任何第三方應用或網(wǎng)站都可以通過使用百度翻譯API為用戶提供實時優(yōu)質的多語言翻譯服務,需要的朋友可以參考下2024-02-02