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

Java使用注解和反射簡化編程的方法示例

 更新時(shí)間:2019年10月29日 08:38:02   作者:cakincqm  
這篇文章主要介紹了Java使用注解和反射簡化編程的方法,結(jié)合實(shí)例形式分析了java使用注解和反射調(diào)用大量函數(shù)簡化編程的相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了Java使用注解和反射簡化編程的方法。分享給大家供大家參考,具體如下:

一 點(diǎn)睛

當(dāng)調(diào)用大量方法,可以使用反射和注解簡化編程。

二 代碼

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;
import java.util.ArrayList;
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
@interface testAnnoation10 {
  public String name() default "methodname";
  public String unit() default "unit";
}
public class ch11_10 {
  public static void main( String[] args ) throws Exception {
    ch11_10 ch9 = new ch11_10();
    Method method[] = ch9.getClass().getMethods();
    for (Method method2 : method) {
      Annotation annotation = method2.getAnnotation(testAnnoation10.class);
      Class<?> ts[] = method2.getParameterTypes();
      if (method2.getName().indexOf("getData") == -1) continue;
      ArrayList<Object> params = new ArrayList<Object>();
      for (Class<?> class1 : ts) {
        if (class1.getSimpleName().equals("int")) {
          params.add(10);
        }
        if (class1.getSimpleName().equals("String")) {
          params.add("100");
        }
      }
      if (annotation != null) {
        testAnnoation10 t9 = (testAnnoation10) annotation;
        System.out.println(t9.name() + " is " + method2.invoke(ch9, params.toArray()) + " " + t9.unit());
      }
    }
  }
  @testAnnoation10(name = "SOC", unit = "%")
  public int getData1( int a ) {
    return a;
  }
  @testAnnoation10(name = "Electricity", unit = "Ah")
  public String getData2( String b ) {
    return b;
  }
  @testAnnoation10(name = "Tempreture", unit = "AF")
  public int getData3( int a, int b ) {
    return a + b;
  }
}

三 運(yùn)行

Tempreture is 20 AF
Electricity is 100 Ah
SOC is 10 %

更多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緩存操作技巧匯總

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

相關(guān)文章

  • 詳解通過JDBC進(jìn)行簡單的增刪改查(以MySQL為例)

    詳解通過JDBC進(jìn)行簡單的增刪改查(以MySQL為例)

    JDBC是用于執(zhí)行SQL語句的一類Java API,通過JDBC使得我們可以直接使用Java編程來對關(guān)系數(shù)據(jù)庫進(jìn)行操作。通過封裝,可以使開發(fā)人員使用純Java API完成SQL的執(zhí)行。
    2017-01-01
  • IKAnalyzer結(jié)合Lucene實(shí)現(xiàn)中文分詞(示例講解)

    IKAnalyzer結(jié)合Lucene實(shí)現(xiàn)中文分詞(示例講解)

    下面小編就為大家?guī)硪黄狪KAnalyzer結(jié)合Lucene實(shí)現(xiàn)中文分詞(示例講解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-10-10
  • SpringCloud-Alibaba-Sentinel-配置持久化策略詳解

    SpringCloud-Alibaba-Sentinel-配置持久化策略詳解

    這篇文章主要介紹了SpringCloud-Alibaba-Sentinel-配置持久化策略,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • IDEA修改java文件后 不用重啟Tomcat服務(wù)便可實(shí)現(xiàn)自動(dòng)更新

    IDEA修改java文件后 不用重啟Tomcat服務(wù)便可實(shí)現(xiàn)自動(dòng)更新

    這篇文章主要介紹了IDEA修改java文件后 不用重啟Tomcat服務(wù)便可實(shí)現(xiàn)自動(dòng)更新,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 利用Java代碼實(shí)現(xiàn)區(qū)塊鏈技術(shù)

    利用Java代碼實(shí)現(xiàn)區(qū)塊鏈技術(shù)

    這篇文章主要介紹了利用Java代碼實(shí)現(xiàn)區(qū)塊鏈技術(shù),區(qū)塊鏈的應(yīng)用范圍幾乎無窮無盡,關(guān)于區(qū)塊鏈?zhǔn)侨绾芜\(yùn)作的,下文來看看具體的內(nèi)容介紹吧,需要的朋友可以參考一下
    2022-04-04
  • 使用IDEA向Gitee提交SpringBoot項(xiàng)目進(jìn)行遠(yuǎn)程管理

    使用IDEA向Gitee提交SpringBoot項(xiàng)目進(jìn)行遠(yuǎn)程管理

    本文主要介紹了使用IDEA向Gitee提交SpringBoot項(xiàng)目進(jìn)行遠(yuǎn)程管理,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • Spring?Boot?實(shí)現(xiàn)字段唯一校驗(yàn)功能(實(shí)例代碼)

    Spring?Boot?實(shí)現(xiàn)字段唯一校驗(yàn)功能(實(shí)例代碼)

    這篇文章主要介紹了Spring?Boot?實(shí)現(xiàn)字段唯一校驗(yàn),實(shí)現(xiàn)代碼很簡單,代碼簡單易懂,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-08-08
  • JavaWeb三大組件之一的Filter詳解

    JavaWeb三大組件之一的Filter詳解

    本篇文章主要介紹了JavaWeb三大組件之中的Filter過濾器詳解,實(shí)例分析了JavaWeb之Filter過濾器的使用技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2022-06-06
  • Java自學(xué)書籍Top 10

    Java自學(xué)書籍Top 10

    這篇文章主要為大家推薦了Java書籍Top 10,是由Java Inside推薦的十本不錯(cuò)的Java書籍,感興趣的小伙伴們可以參考一下
    2016-09-09
  • 基于SpringBoot實(shí)現(xiàn)動(dòng)態(tài)配置數(shù)據(jù)庫的加載

    基于SpringBoot實(shí)現(xiàn)動(dòng)態(tài)配置數(shù)據(jù)庫的加載

    這篇文章主要介紹了Spring?Boot?如何動(dòng)態(tài)配置數(shù)據(jù)庫的加載,現(xiàn)項(xiàng)目有一個(gè)需求,期望通過在application.yml配置文件中設(shè)置一個(gè)開關(guān),來決定是否加載數(shù)據(jù)庫,文中通過代碼示例講解的非常詳細(xì),需要的朋友可以參考下
    2024-10-10

最新評論

塘沽区| 丹阳市| 华容县| 临泉县| 明光市| 班玛县| 武胜县| 石台县| 汉中市| 咸丰县| 大名县| 汉川市| 黄山市| 韶关市| 渑池县| 昌都县| 洪洞县| 衡阳市| 扶余县| 兴仁县| 汉沽区| 尖扎县| 南城县| 灵石县| 凌源市| 上饶县| 湘潭县| 枝江市| 如皋市| 信丰县| 长汀县| 长垣县| 交口县| 虹口区| 南宫市| 二手房| 拜城县| 即墨市| 巴彦淖尔市| 贺兰县| 南部县|