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

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

Java注解三連問

2023-08-10 10:50 作者:趣學(xué)旅程  | 我要投稿

前言

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

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

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

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

我們的分析如下:

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

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

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

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

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

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

那什么是編譯期有效?

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

最后,說第三個問題

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

比如Springweb提供的

@RestController

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

我們可以看到其關(guān)鍵點的描述為:

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

最后

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

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

希望對大家有所幫助!


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

分享到微博請遵守國家法律
林甸县| 陇川县| 曲阜市| 比如县| 沙河市| 长岛县| 禹州市| 东平县| 沧州市| 恭城| 策勒县| 红河县| 小金县| 铅山县| 翁牛特旗| 九台市| 芷江| 确山县| 滦平县| 沾化县| 平乡县| 南川市| 双辽市| 镇雄县| 平谷区| 泰安市| 潢川县| 海南省| 湾仔区| 喀什市| 石泉县| 镇坪县| 罗平县| 阳江市| 临海市| 台州市| 贵阳市| 缙云县| 长白| 定州市| 潞城市|