最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Java注解三連問

2023-05-11 23:04 作者:架構風清揚-趣學旅程  | 我要投稿

注解的內容很多,本次的面試題講解主要是針對以下幾個問題:

1,注解是在編譯期生效還是運行期生效?

2,有沒有只在編譯期生效的注解?

3,編譯期生效的注解和運行期生效的注解有什么區(qū)別?

我們的分析如下:

首先,第一個問題是給面試者挖坑,兩者都存在,關鍵看注解的定義描述;

其次,第二個問題是有,比如我們JDK默認提供注解@Oerride

我們觀察其注解的定義如下

上面的兩個注解說明做下解釋:

@Target(ElementType.METHOD) :表示該注解可以放在方法的定義上

@Retention(RetentionPolicy.SOURCE) : 表示該注解在編譯期有效

那什么是編譯期有效?

就好比我們說的@Oerride,它的作用就是在編譯期間,檢查我們重寫的代碼有沒有符合語法規(guī)則,如果不符合就會通過紅線報錯,編譯失敗,而真正到運行期間就沒有作用了

最后,說第三個問題

就是運行期的注解有什么用,其實我們用過的很多框架,他們都會提供注解,這些都不是JDK提供的注解,我們統(tǒng)稱為自定義注解

比如Springweb提供的?

@RestController

我們觀察其注解的定義說明如下:

我們可以看到其關鍵點的描述為:

@Retention(RetentionPolicy.RUNTIME) : 表示是運行期有效

為什么需要定義為運行期有效?

大家想想,我們創(chuàng)建Controller是不是在服務運行期間才正式對外提供服務的,而Spring容器需要去檢查到底哪些Controller可以對外提供服務,那么以這個自定義注解為暗號,一看,咦,你小子有這個注解,行了,你就是可以對外提供服務的人,所以注解必須是在運行期間有效

希望對您有所幫助!


Java注解三連問的評論 (共 條)

分享到微博請遵守國家法律
高邮市| 紫阳县| 万年县| 谢通门县| 宣汉县| 庆元县| 青海省| 彭泽县| 富裕县| 当阳市| 贺兰县| 习水县| 安丘市| 通海县| 兰考县| 曲沃县| 酒泉市| 连州市| 黄骅市| 宝兴县| 康定县| 台州市| 久治县| 新乡市| 遂宁市| 霍州市| 麻江县| 黄浦区| 大荔县| 长宁区| 顺昌县| 高唐县| 霸州市| 秭归县| 来凤县| 宜兰市| 绥芬河市| 灵川县| 安泽县| 山东| 金山区|