我使用封装获取目标方法然后调用它的单个方法。当然可能有一些限制。这里是放入类中的方法和它的JUnit测试:

public class Invoker {

/**

* Get method and invoke it.

*

* @author jbetancourt

*

* @param name of method

* @param obj Object to invoke the method on

* @param types parameter types of method

* @param args to method invocation

* @return return value

* @throws Exception for unforseen stuff

*/

public static final Object invokeMethod(final String name, final T obj,

final Class>[] types, final Object... args) throws Exception {

Method method = obj.getClass().getDeclaredMethod(name, types);

method.setAccessible(true);

return method.invoke(obj, args);

}

/**

* Embedded JUnit tests.

*/

@RunWith(JUnit4.class)

public static class InvokerTest {

/** */

@Test

public void testInvoke() throws Exception {

class TestTarget {

private String hello() {

return "Hello world!";

}

}

String actual = (String) Invoker.invokeMethod("hello",

new TestTarget(), new Class>[] {});

String expected = "Hello world!";

assertThat(actual, is(expected));

}

}

}

java 反射访问静态方法_如何使用反射(Java)调用私有静态方法?相关推荐

  1. java 反射的效率_如何提高使用Java反射的效率?

    前言 在我们平时的工作或者面试中,都会经常遇到"反射"这个知识点,通过"反射"我们可以动态的获取到对象的信息以及灵活的调用对象方法等,但是在使用的同时又伴随着另 ...

  2. java基础反射知识总结_非常好的Java基础反射总结

    前言疯狂复习基础ing- 最近复习的Jv基础反射做了应该总结,果然反射不只有那么一点点东西,多的是精髓! 最重要的是最后推荐的那两篇文章,写的非常非常好!!反射 1.反射的原理Jv反射机制就是在运行状 ...

  3. java 集成访问权限_集成块:Java访问控制,停止疯狂!

    java 集成访问权限 疯狂谈话 您可以使用访问修饰符将API与实现(也称为封装)分开. 修饰符为您提供了一种干净的方法来告诉其他开发人员:"这是我打算供您使用的内容,其余所有内容都在我的实 ...

  4. java applet 访问文件_使用JavaApplet访问数据库

    使用Java Applet访问数据库 学习任何的程序语言,当然都得与数据库,Java刚刚诞生的时候,对数据库的支持并不是很好,经过这几年的发展,它对数据库的支持也已经完全达到了成熟的境地.由于这里主要 ...

  5. 五脏六腑在脸上的反射区图片_面部五脏反射穴位图

    t是什么人的脸部穴位图足面部排毒醒肤术,即脸部刮痧美容法,是根据刮痧治病的原理派生出来的一种新颖疗肤法.穴位名称筋缩所属经络督脉穴位位置背部后正中线,第九胸椎棘突下凹陷解决情志方面的疾病说明八会穴中的 ...

  6. java虚拟机类加载机制_《深入理解java虚拟机》学习笔记一/类加载机制

    为何要读这本书? 近期看了左萧龙大哥的单例设计模式,后文讲解到了JVM对类实例化相关知识,感觉看着很无力,不懂,于是乎买本书研究下. 如何读? 个人水平一般,理解程度有限,书中说到每章关联不是很大,所 ...

  7. java list e 查找_源码(04) -- java.util.ListE

    java.util.List 源码分析(JDK1.7) ------------------------------------------------------------------------ ...

  8. java 基础 笔试题_非常全面的java基础笔试题

    1.下列说法正确的是() (程序结构) A java程序的main方法必须写在类甩面 B java程序中可以有多个main方法 C.java程序中类名必须与文件名一样 D.JAVA程序的main方法中 ...

  9. java 开发书籍 目录_《零基础 Java 开发 》全书目录

    第1部分 Java开发基础 第一章 搭建Java开发环境 1.1 Java简介 1.2 Java开发环境搭建 1.3 Java语⾔的功能 1.4 使用Eclipse开发Java程序 1.5 使用IDE ...

  10. java class 文件分析_大概优秀的java程序员都要会分析class文件吧

    相信大家在学java的时候都会听到这样的一些结论: enum 是一个类 泛型的实现使用了类型擦除技术 非静态内部类持有外部类的引用 需要将自由变量声明成final才能给匿名内部类访问 ... 初学的时 ...

最新文章

  1. kazoo源码分析:服务器交互的实现细节
  2. MongoDB 4.0 事务实现解析
  3. heroes 2 android,英雄出击2游戏下载-英雄出击2Heroes Strike2中文安卓版下载v0.0.5- 游侠下载站...
  4. 程序员如何开始新的工作(转)
  5. java excel data 导入数据_java实现导入导出excel数据
  6. (10)C#偷懒的开始永无止境的循环?
  7. SPI 读取不同长度 寄存器_SPI协议,MCP2515裸机驱动详解
  8. jQuery css
  9. NLP简报(Issue#1)
  10. android fastboot原理,FastBoot使用一
  11. python数据结构3-链表
  12. 安装DEEP LEARNING TOOL 0.4.3 EARLY ADOPTER
  13. 领域驱动设计营销系统建模
  14. Clickhouse基本函数( 转载)
  15. macOS开发中用TagLib获取、修改音频文件信息
  16. 如何使用 scp 递归复制目录
  17. 99%的人都不知道内网、外网、宽带、带宽、流量、网速之间的区别与联系
  18. 北航 2018计算机学院排课,关于2018—2019学年第二学期排课安排的通知
  19. protocol buffer namespace conflict
  20. 网易控股的立马理财逾期,网易前员工爆料:把内部员工当韭菜

热门文章

  1. server2008中如何关闭internet explorer增强的安全配置
  2. Java编码规范 Code Conventions for the Java
  3. AWARD BIOS设置(INTEL芯片组)
  4. RhinoMock入门(3)——4种Mock类型
  5. 控件onkeyup事件,使验证控件不能即时验证
  6. sklearn模型评选择与评估
  7. 【计网】IP地址、子网掩码、网络号、主机号、网络地址、主机地址以及ip段/数字-如192.168.0.1/24是什么意思?
  8. 卷积神经网络初步认知
  9. MongoDB中如何优雅地删除大量数据
  10. lombok时运行编译无法找到get/set方法 看这篇就够了