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

歡迎光臨散文網(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注解三連問的評論 (共 條)

分享到微博請遵守國家法律
桑日县| 秭归县| 四会市| 盐城市| 灵丘县| 潢川县| 洪江市| 个旧市| 博湖县| 望奎县| 敖汉旗| 团风县| 木里| 金昌市| 含山县| 赫章县| 于田县| 玉门市| 白玉县| 金昌市| 汉阴县| 长顺县| 苍溪县| 仙游县| 新疆| 会昌县| 庆云县| 尚志市| 开远市| 雅江县| 红河县| 汽车| 石首市| 哈巴河县| 宜春市| 江阴市| 杭州市| 石泉县| 吉木萨尔县| 萨迦县| 通辽市|