注解和反射13.性能对比分析

简介: 注解和反射13.性能对比分析
public static void test01(){
        User user = new User();
        long startTime = System.currentTimeMillis();
        for (int i = 0;i<1000000000;i++){
            user.getName();
        }
        long endTime = System.currentTimeMillis();
        System.out.println("普通方法执行10亿次"+(endTime-startTime)+"ms");
    }
    public static void test02(){
        User user = new User();
         User user=  user.getclass();
        Method getName =  user.getDeclaredMethod("getName",null);
        long startTime = System.currentTimeMillis();
        for (int i = 0;i<1000000000;i++){
            getName.invoke("user",null);
        }
        long endTime = System.currentTimeMillis();
        System.out.println("反射方式执行10亿次"+(endTime-startTime)+"ms");
    }
    public static void test03(){
        User user = new User();
        long startTime = System.currentTimeMillis();
        get.Name.setAccessible(true);
        for (int i = 0;i<1000000000;i++){
            user.getName();
        }
        long endTime = System.currentTimeMillis();
        System.out.println("关闭监测执行10亿次"+(endTime-startTime)+"ms");
    }


然后写一个main方法,去调用三个方法

反射方法的时间最长,然后关闭监测执行的最后普通方式执行的最快

相关文章
|
7月前
|
安全 Java
Java反射-Class对象功能概述及反射案例
Java反射-Class对象功能概述及反射案例
75 1
|
2月前
|
存储 缓存 安全
ReflectionUtils提高反射性能!
【10月更文挑战第14天】本文介绍了如何使用Spring框架的`ReflectionUtils`工具类来提高反射操作的性能。通过对比原生反射API与`ReflectionUtils`在创建实例、调用方法和设置字段值等方面的性能,展示了`ReflectionUtils`在多次调用时显著的性能优势。文章还深入分析了`ReflectionUtils`的源码,揭示了其通过缓存机制和减少对象创建次数来提升性能的秘密。最后,作者建议在项目中遇到反射需求时优先考虑使用`ReflectionUtils`。
|
7月前
|
JSON 前端开发 Java
数据映射框架之三大神器:反射、注解、动态代理
数据映射框架之三大神器:反射、注解、动态代理
63 3
数据映射框架之三大神器:反射、注解、动态代理
|
安全 Java 程序员
魔法反射--java反射初入门(基础篇)
反射被应用于许多方面, spring的注解, jdbc的连接都是基于反射来实现的, 可能在工作中我们很少能用到反射, 但是在面试的过程中面试官经常会问道, 可以不用反射, 但作为一个程序猿, 还是应该了解了解的
104 0
|
前端开发 编译器 容器
|
JavaScript 前端开发 Java
注解与反射5.反射概述
注解与反射5.反射概述
|
算法 安全 C#
C#反射与特性(一):反射基础
C#反射与特性(一):反射基础
272 0
C#反射与特性(一):反射基础
|
程序员 编译器 API
C#反射与特性(九): 全网最全-解析反射
C#反射与特性(九): 全网最全-解析反射
356 0
C#反射与特性(九): 全网最全-解析反射
|
缓存 Oracle IDE
深入分析Java反射(八)-优化反射调用性能
Java反射的API在JavaSE1.7的时候已经基本完善,但是本文编写的时候使用的是Oracle JDK11,因为JDK11对于sun包下的源码也上传了,可以直接通过IDE查看对应的源码和进行Debug。
397 0
|
Java C# C++
实战中反射的应用
实战中反射的应用
128 0
实战中反射的应用