无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

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

后端 | Java | 注解

2023-06-23 23:48 作者:朵寶特工007  | 我要投稿

筆記來源:Java入門基礎(chǔ)視頻教程,java零基礎(chǔ)自學(xué)就選黑馬程序員Java入門教程

一、注解(Annotation)

  • 就是Java代碼中的特殊標記,比如@Override、@Test,作用是:讓其他程序根據(jù)注解信息來決定怎么執(zhí)行該程序。

  • 注解可以用在類上、構(gòu)造器上、方法上、成員變量上、參數(shù)上等位置處。

  • 注解的原理:注解本質(zhì)是一個接口,Java中所有注解都是繼承了Annotation接口的。

  • @注解(...):其實就是一個實現(xiàn)類對象,實現(xiàn)了該注解以及Annotation接口。


二、自定義注解

  • 自己定義的注解。

  • 特殊屬性名:value

    • 如果注解中只有一個value屬性,使用注解時,value名稱可以不寫。


三、元注解

  • 元注解是指修飾注解的注解。

  • 常見的元注解:

    • @Target:@Target(ElementType.Type),聲明當前被修飾的注解只能在哪些位置使用。

      • TYPE:類、接口。

      • FIELD:成員變量。

      • METHOD:成員方法。

      • PARAMETER:方法參數(shù)。

      • CONSTRUCTOR:構(gòu)造器。

      • LOCAL_VARIABLE:局部變量。

    • @Retention:@Retention(RetentionPolicy.RUNTIME),聲明注解的保留周期。

      • SOURCE:只作用在源碼階段,字節(jié)碼文件中不存在。

      • CLASS(默認值):保留到字節(jié)碼文件階段,運行階段不存在。

      • RUNTIME(開發(fā)常用):一直保留到運行階段。


四、注解的解析

  • 就是判斷類上、方法上、成員變量上是否存在注解,并把注解里的內(nèi)容給解析出來。

  • 要解析誰上面的注解,就應(yīng)該先拿到誰;比如要解析類上的注解,則應(yīng)該先獲取該類的Class對象,再通過Class對象解析其上面的注解。

  • Class、Method、Field、Constructor都實現(xiàn)了AnnotatedElement接口,他們都擁有解析注解的能力。

  • AnnotatedElement接口提供的方法:

    • public Annotation[] getDeclaredAnnotations():獲取當前對象上面的注解。

    • public T getDeclaredAnnotation(Class<T> annotationClass):獲取指定的注解對象。

    • public boolean isAnnotationPresent(Class<Annotation> annotation):判斷當前對象上是否存在某個注解。


后端 | Java | 注解的評論 (共 條)

分享到微博請遵守國家法律
大理市| 扎兰屯市| 自治县| 张家界市| 日土县| 手游| 安溪县| 鹿泉市| 汽车| 蓬莱市| 磴口县| 龙南县| 海原县| 崇阳县| 西乌珠穆沁旗| 安国市| 湟中县| 米易县| 尼玛县| 深水埗区| 兰州市| 虹口区| 旬阳县| 平果县| 嘉祥县| 巴林右旗| 广河县| 玉溪市| 南京市| 栾城县| 江孜县| 滦南县| 思茅市| 崇义县| 夏邑县| 项城市| 淮安市| 郸城县| 江津市| 金平| 阿尔山市|