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

java反射耗時(shí)測(cè)試案例解析

 更新時(shí)間:2019年10月17日 08:19:53   作者:一首簡(jiǎn)單的歌  
這篇文章主要介紹了java反射耗時(shí)測(cè)試案例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

java反射相對(duì)與普通的對(duì)象調(diào)用原理上來(lái)說(shuō)更加耗時(shí),在調(diào)用次數(shù)較少的情況下可忽略性能損失,但當(dāng)調(diào)用次數(shù)非常多時(shí),需要考慮到此問(wèn)題,即調(diào)用次數(shù)過(guò)多時(shí)不宜使用反射,以下舉例:

package com.test.reflection;
import java.lang.reflect.Method;
public class ReflectionDemo {
  public static void main(String[] args) throws Exception {
    // 常規(guī)方式
    Student student = new Student();
    long startNormal = System.currentTimeMillis();
    for (int i = 0; i < 1000000; i++) {
      student.setName("hello");
    }
    System.out.println("timeNormal=" + (System.currentTimeMillis() - startNormal));
    //反射方式
    Class<?> cla=Class.forName("com.test.reflection.Student");
    long startReflection = System.currentTimeMillis();
    for (int i = 0; i < 1000000; i++) {
      Method method=cla.getDeclaredMethod("setName", String.class);
      method.invoke(cla.newInstance(), "hello");
    }
    System.out.println("timeReflection=" + (System.currentTimeMillis() - startReflection));
  }
}

運(yùn)行結(jié)果:

timeNormal=8
timeReflection=537

這是在簡(jiǎn)單使用反射調(diào)用某個(gè)方法的場(chǎng)景下1000000調(diào)用的性能差距。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBoot中MyBatis-Flex的集成和使用實(shí)現(xiàn)

    SpringBoot中MyBatis-Flex的集成和使用實(shí)現(xiàn)

    MyBatis-Flex是一個(gè)基于MyBatis的數(shù)據(jù)訪問(wèn)框架,MyBatis-Flex能夠極大地提高我們的開(kāi)發(fā)效率和開(kāi)發(fā)體驗(yàn),本文主要介紹了SpringBoot中MyBatis-Flex的集成和使用實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-12-12
  • Java多線程之悲觀鎖與樂(lè)觀鎖

    Java多線程之悲觀鎖與樂(lè)觀鎖

    這篇文章主要為大家詳細(xì)介紹了Java悲觀鎖與樂(lè)觀鎖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-03-03
  • SpringBoot 整合Tess4J庫(kù)實(shí)現(xiàn)圖片文字識(shí)別案例詳解

    SpringBoot 整合Tess4J庫(kù)實(shí)現(xiàn)圖片文字識(shí)別案例詳解

    Tess4J是一個(gè)基于Tesseract OCR引擎的Java接口,可以用來(lái)識(shí)別圖像中的文本,說(shuō)白了,就是封裝了它的API,讓Java可以直接調(diào)用,今天給大家分享一個(gè)SpringBoot整合Tess4j庫(kù)實(shí)現(xiàn)圖片文字識(shí)別的小案例
    2023-10-10
  • 新聞列表的分頁(yè)查詢(xún)java代碼實(shí)現(xiàn)

    新聞列表的分頁(yè)查詢(xún)java代碼實(shí)現(xiàn)

    這篇文章主要為大家詳細(xì)介紹了新聞列表的分頁(yè)查詢(xún)java代碼實(shí)現(xiàn),感興趣的小伙伴們可以參考一下
    2016-08-08
  • Java中的FutureTask源碼解析

    Java中的FutureTask源碼解析

    這篇文章主要介紹了Java中的FutureTask源碼解析,FutureTask是一個(gè)可取消的異步計(jì)算,這個(gè)類(lèi)是Future的實(shí)現(xiàn)類(lèi),有開(kāi)始和取消一個(gè)計(jì)算的方法,如果一個(gè)計(jì)算已經(jīng)完成可以查看結(jié)果,需要的朋友可以參考下
    2023-12-12
  • Spring中@Async注解實(shí)現(xiàn)異步調(diào)詳解

    Spring中@Async注解實(shí)現(xiàn)異步調(diào)詳解

    在本篇文章里小編給大家分享的是關(guān)于Spring中@Async注解實(shí)現(xiàn)異步調(diào)詳解內(nèi)容,需要的朋友們可以學(xué)習(xí)下。
    2020-04-04
  • SpringCloud中使用Sentinel實(shí)現(xiàn)限流的實(shí)戰(zhàn)

    SpringCloud中使用Sentinel實(shí)現(xiàn)限流的實(shí)戰(zhàn)

    限流在很多地方都可以使用的到,本篇博客將介紹如何使用SpringCloud中使用Sentinel實(shí)現(xiàn)限流,從而達(dá)到服務(wù)降級(jí)的目的,感興趣的可以了解一下
    2022-01-01
  • Java使用Ajax實(shí)現(xiàn)跨域上傳圖片功能

    Java使用Ajax實(shí)現(xiàn)跨域上傳圖片功能

    這篇文章主要介紹了Java使用Ajax實(shí)現(xiàn)跨域上傳圖片功能,需要的朋友可以參考下
    2017-09-09
  • Java中使用Apache POI讀取word文件簡(jiǎn)單示例

    Java中使用Apache POI讀取word文件簡(jiǎn)單示例

    這篇文章主要介紹了Java中使用Apache POI讀取word文件簡(jiǎn)單示例,本文著重介紹了一些必要條件,然后給出一個(gè)簡(jiǎn)單讀取示例,需要的朋友可以參考下
    2015-06-06
  • java 獲取中文拼音首字母及全拼的實(shí)踐

    java 獲取中文拼音首字母及全拼的實(shí)踐

    本文主要介紹了java 獲取中文拼音首字母及全拼的實(shí)踐,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08

最新評(píng)論

余姚市| 盈江县| 镇巴县| 长子县| 钦州市| 巴林右旗| 闻喜县| 兴义市| 盱眙县| 斗六市| 柳林县| 新化县| 都匀市| 涞源县| 平和县| 焦作市| 沂水县| 鄂州市| 临澧县| 阳山县| 昂仁县| 乐至县| 望都县| 枣阳市| 木里| 奉节县| 南投县| 临清市| 稷山县| 怀远县| 东乡| 桃园市| 南川市| 略阳县| 涿鹿县| 泗洪县| 同仁县| 廉江市| 邵东县| 神池县| 昭苏县|