当前位置: 首页 > 编程笔记 >

java反射耗时测试案例解析

屠杰
2023-03-14
本文向大家介绍java反射耗时测试案例解析,包括了java反射耗时测试案例解析的使用技巧和注意事项,需要的朋友参考一下

java反射相对与普通的对象调用原理上来说更加耗时,在调用次数较少的情况下可忽略性能损失,但当调用次数非常多时,需要考虑到此问题,即调用次数过多时不宜使用反射,以下举例:

package com.test.reflection;
import java.lang.reflect.Method;
public class ReflectionDemo {
  public static void main(String[] args) throws Exception {
    // 常规方式
    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));
  }
}

运行结果:

timeNormal=8
timeReflection=537

这是在简单使用反射调用某个方法的场景下1000000调用的性能差距。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍JAVA反射机制实例详解,包括了JAVA反射机制实例详解的使用技巧和注意事项,需要的朋友参考一下 本文实例分析了JAVA反射机制。分享给大家供大家参考,具体如下: 反射,当时经常听他们说,自己也看过一些资料,也可能在设计模式中使用过,但是感觉对它没有一个较深入的了解,这次重新学习了一下,感觉还行吧! 一、先看一下反射的概念: 主要是指程序可以访问,检测和修改它本身状态或行为的一种能力

  • 本文向大家介绍Java反射技术详解及实例解析,包括了Java反射技术详解及实例解析的使用技巧和注意事项,需要的朋友参考一下 前言   相信很多人都知道反射可以说是Java中最强大的技术了,它可以做的事情太多太多,很多优秀的开源框架都是通过反射完成的,比如最初的很多注解框架,后来因为java反射影响性能,所以被运行时注解APT替代了,java反射有个开源框架jOOR相信很多人都用过,不过我们还是要学

  • 本文向大家介绍Java 反射机制的实例详解,包括了Java 反射机制的实例详解的使用技巧和注意事项,需要的朋友参考一下 Java 反射机制的实例详解 前言 今天介绍下Java的反射机制,以前我们获取一个类的实例都是使用new一个实例出来。那样太low了,今天跟我一起来学习学习一种更加高大上的方式来实现。 正文 Java反射机制定义 Java反射机制是指在运行状态中,对于任意一个类,都能够知道这个类

  • 本文向大家介绍PHP中的reflection反射机制测试例子,包括了PHP中的reflection反射机制测试例子的使用技巧和注意事项,需要的朋友参考一下 Java类反射应用得非常广泛几乎是所有框架的最核心部分,PHP程序员似乎从不关心反射。尝试着用java的思想去理解php的反射,跟java基本上基本一致。参考了php手册:http://www.php.net/manual/zh/book.re

  • Selenium IDE 有很多不同的方式来运行测试案例。你可以一次完整的运行整个测试案例,或者暂停运行并继续运行,或者一次执行一行,或者执行正在开发的这个命令,或者通过测试套件批量运行若干测试案例。在 Selenium IDE 中运行测试案例非常灵活和方便。 运行一个测试案例 单击运行按钮,可以运行当前显示的测试用例。 运行一个测试套件 单击运行全部按钮,可以运行当前加载的测试套件中的所有测试案

  • 开发测试案例有三个主要的方法:录制、利用上下文菜单添加验证和断言以及编辑和修改测试案例。通常自动化测试工程师应该同时掌握这三种方法。 录制 很多新手都是从录制一个与网站交互的测试用例,开始学习自动化测试的。当第一次打开 Selenium IDE 时,录制按钮默认是启动的。如果你不想要 Selenium IDE 自动开始录制,在系统设置中可以关掉。具体操作如下:点击 Options 菜单 > Opt