最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java通過反射訪問注解信息的方法示例

 更新時(shí)間:2019年08月02日 09:00:33   作者:cakincqm  
這篇文章主要介紹了Java通過反射訪問注解信息的方法,結(jié)合實(shí)例形式分析了java基于反射訪問類成員方法注解信息的相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了Java通過反射訪問注解信息的方法。分享給大家供大家參考,具體如下:

一 點(diǎn)睛

利用Java的反射機(jī)制,可以訪問注解信息。比如在調(diào)用某個(gè)方法時(shí),需要知道該方法的一些基本信息,而這些信息又需要?jiǎng)討B(tài)獲取時(shí),利用發(fā)射獲取注解信息是一個(gè)比較理想的處理方式。

二 實(shí)戰(zhàn)——訪問類的某個(gè)成員方法的注解信息

1 代碼

import java.lang.annotation.Annotation;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.lang.reflect.Method;
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
@interface testAnnoation8 {
  public String name() default "methodname";
  public String unit() default "unit";
}
public class ch11_8 {
  public String aString;
  public static void main( String[] args ) {
    try {
      ch11_8 ch8 = new ch11_8();
      Method method = ch8.getClass().getMethod("getData1");
      Annotation ans[] = method.getAnnotations();
      for (Annotation annotation : ans) {
        System.out.println(annotation);
      }
      Annotation annotation = method.getAnnotation(testAnnoation8.class);
      System.out.println(annotation);
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
  @Deprecated
  @testAnnoation8(name = "SOC", unit = "%")
  public void getData1() {
  }
}

2 運(yùn)行

@java.lang.Deprecated()
@testAnnoation8(name=SOC, unit=%)
@testAnnoation8(name=SOC, unit=%)

三 實(shí)戰(zhàn)——訪問類的某個(gè)成員方法的注解信息

1 代碼

import java.lang.annotation.Annotation;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.lang.reflect.Method;
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
@interface testAnnoation9{
   public String name() default "methodname";
   public String unit() default "unit";
}
public class ch11_9 {
  public String aString;
  public static void main(String[] args) {
   try {
     ch11_9 ch9=new ch11_9();
     Method method=ch9.getClass().getMethod("getData1");
     Annotation annotation=method.getAnnotation(testAnnoation9.class);
     testAnnoation9 t9=(testAnnoation9)annotation;
     System.out.println("name value is "+t9.name()+"; unit is "+t9.unit());
   } catch (Exception e) {
     e.printStackTrace();
   }
  }
  @Deprecated
  @testAnnoation9(name = "SOC", unit = "%")
  public void getData1(){
  }
}

2 運(yùn)行

name value is SOC; unit is %

更多java相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java面向?qū)ο蟪绦蛟O(shè)計(jì)入門與進(jìn)階教程》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點(diǎn)技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總

希望本文所述對(duì)大家java程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • SpringBoot整合Shiro的方法詳解

    SpringBoot整合Shiro的方法詳解

    Apache?Shiro是一個(gè)java安全(權(quán)限)框架,Shiro可以非常容易的開發(fā)出足夠好的應(yīng)用,其不僅可以用在javase環(huán)境,也可以用在javaee環(huán)境。本文介紹了SpringBoot整合Shiro的方法,需要的可以參考一下
    2022-05-05
  • 總結(jié)Junit4,Junit5,Jupiter之間的聯(lián)系

    總結(jié)Junit4,Junit5,Jupiter之間的聯(lián)系

    Jupiter和Junit5之間有什么聯(lián)系?Jupiter提供了哪些新的測(cè)試方法?如何用IDEA和Jupiter生成可讀性更好的測(cè)試報(bào)告?文中有非常詳細(xì)的說明,需要的朋友可以參考下
    2021-06-06
  • 利用java反射機(jī)制調(diào)用類的私有方法(推薦)

    利用java反射機(jī)制調(diào)用類的私有方法(推薦)

    下面小編就為大家?guī)硪黄胘ava反射機(jī)制調(diào)用類的私有方法(推薦)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-08-08
  • Java獲取用戶訪問IP及地理位置的方法詳解

    Java獲取用戶訪問IP及地理位置的方法詳解

    這篇文章主要介紹了Java獲取用戶訪問IP及地理位置的方法,結(jié)合實(shí)例形式詳細(xì)分析了Java基于百度地圖開放平臺(tái)獲取用戶訪問IP及地理位置相關(guān)操作技巧,需要的朋友可以參考下
    2020-04-04
  • jvm垃圾回收之GC調(diào)優(yōu)工具分析詳解

    jvm垃圾回收之GC調(diào)優(yōu)工具分析詳解

    這篇文章主要為大家介紹了jvm垃圾回收之GC調(diào)優(yōu)工具的分析詳解,在進(jìn)行JVM?GC性能調(diào)優(yōu)之前,需要使用某些工具獲取到當(dāng)前應(yīng)用的狀態(tài)信息
    2022-01-01
  • SpringBoot中使用Redis?Stream實(shí)現(xiàn)消息監(jiān)聽示例

    SpringBoot中使用Redis?Stream實(shí)現(xiàn)消息監(jiān)聽示例

    本文主要介紹了SpringBoot中使用Redis?Stream實(shí)現(xiàn)消息監(jiān)聽示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • SpringBoot自定義注解驗(yàn)證枚舉的實(shí)現(xiàn)

    SpringBoot自定義注解驗(yàn)證枚舉的實(shí)現(xiàn)

    本文主要介紹了SpringBoot自定義注解驗(yàn)證枚舉的實(shí)現(xiàn),數(shù)據(jù)校驗(yàn),需要對(duì)枚舉類型的數(shù)據(jù)傳參,進(jìn)行數(shù)據(jù)校驗(yàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-01-01
  • Windows下使用IDEA搭建Hadoop開發(fā)環(huán)境的詳細(xì)方法

    Windows下使用IDEA搭建Hadoop開發(fā)環(huán)境的詳細(xì)方法

    這篇文章主要介紹了Windows下使用IDEA搭建Hadoop開發(fā)環(huán)境,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-12-12
  • SpringBoot實(shí)現(xiàn)海量數(shù)據(jù)高效實(shí)時(shí)搜索功能

    SpringBoot實(shí)現(xiàn)海量數(shù)據(jù)高效實(shí)時(shí)搜索功能

    我們都知道隨著業(yè)務(wù)系統(tǒng)的發(fā)展和使用,數(shù)據(jù)庫存儲(chǔ)的業(yè)務(wù)數(shù)據(jù)量會(huì)越來越大,逐漸成為了業(yè)務(wù)系統(tǒng)的瓶頸,本文給大家介紹了Spring Boot業(yè)務(wù)系統(tǒng)如何實(shí)現(xiàn)海量數(shù)據(jù)高效實(shí)時(shí)搜索,文中有詳細(xì)的代碼示例,需要的朋友可以參考下
    2023-10-10
  • Java項(xiàng)目常見工具類詳解

    Java項(xiàng)目常見工具類詳解

    這篇文章主要為大家總結(jié)了平時(shí)在Java項(xiàng)目中使用的工具類:JWT工具類、MD5工具類、視頻點(diǎn)播工具類、公共常量工具類、日期操作工具類、Http客戶端工具類和獲取IP工具類。需要的可以參考一下
    2021-12-12

最新評(píng)論

繁峙县| 庄浪县| 永安市| 化隆| 乡宁县| 台江县| 鄂伦春自治旗| 洞口县| 赫章县| 尼勒克县| 恩施市| 彝良县| 景德镇市| 营山县| 邢台市| 新营市| 呼伦贝尔市| 东安县| 双流县| 五指山市| 三台县| 大理市| 临夏县| 尼勒克县| 原平市| 靖边县| 甘肃省| 防城港市| 南岸区| 溧水县| 通化市| 务川| 乐昌市| 平邑县| 上饶市| 大庆市| 夏河县| 永安市| 斗六市| 施甸县| 莒南县|