java反射---获取类的方法
来源:互联网 发布:网络教育大专,自考本科 编辑:程序博客网 时间:2024/06/11 04:15
/**
*
*/
package cn.thcic;
import java.lang.reflect.Method;
/**
* java反射---获取类的方法
* <p>
*
* </p>
* by Zhiwang Zhang on 2014年7月21日
*/
public class Test109 {
public static void main(String[] args) {
// 通过Class类来获取类的方法,共有以下四种方法:
// 1、public Method[] getMethods(),获取所有的共有方法的集合
Class classInfo = Test109.class;
Method[] methods = classInfo.getMethods();
System.out.println("public方法共有:" + methods.length);
if (methods != null) {
for (Method m : methods) {
System.out.println(m.toString());
}
}
// 2、public Method[] getDeclaredMethods(),获取所有的方法,不包括继承的方法
Method[] methodsSec = classInfo.getDeclaredMethods();
System.out.println("Test109的所有方法共有:" + methodsSec.length);
if (methodsSec != null) {
for (Method m : methodsSec) {
System.out.println(m.toString());
}
}
// 3、public Method getMethod(String name,Class<?>...
// parameterTypes),获取指定公有方法 参数1:方法名 参数2:参数类型集合
try {
Method methodForRun = classInfo.getMethod("run", String.class,
Long.class);
// invoke(Object obj, Object... args),对带有指定参数的指定对象调用由此
// Method对象表示的基础方法。
Test109 test = (Test109) classInfo.newInstance();
methodForRun.invoke(test, "zzw", 1L);
} catch (Exception e) {
e.printStackTrace();
}
// 4、public Method getDeclaredMethod(String name,Class<?>...
// parameterTypes) 获取任意指定方法
try {
Method methodForSleep = classInfo.getDeclaredMethod("sleep",
String.class);
Test109 testSec = (Test109) classInfo.newInstance();
int i = (int) methodForSleep.invoke(testSec, "lwz");
System.out.println(i);
} catch (Exception e) {
e.printStackTrace();
}
}
public void run(String name, Long age) {
System.out.println("公有run()方法...");
}
private int sleep(String name) {
System.out.println("私有sleep()方法...");
return 1;
}
}
- java反射---获取类的构造方法
- java反射---获取类的方法
- Java 反射获取方法
- Java反射获取方法
- Java 使用反射获取类、方法、属性上的注释
- Java反射获取一个类的所有get方法
- Java反射获取类的属性值和方法
- java反射——获取类的方法信息
- Java反射机制获取/调用类的属性和方法
- Java反射类工具获取成员的所有方法代码
- Java反射的获取方法浅析
- java 反射获取类方法(2)
- JAVA反射机制获取类和方法
- JAVA反射获取属性注解,类方法
- JAVA反射机制获取类和方法
- java反射机制,获取类,属性,方法
- Java反射获取构造方法
- Java反射获取成员方法
- WPF中datePicker1控件获取中的日期格试为YYYY-MM-DD 转换成yyyMMdd格式
- java反射---获取类的成员变量
- 第二周进度报告 arduino传感器程序编写及调试
- UIPro实例讲解之QQ2014 UI模仿系列二
- Android APN配置
- java反射---获取类的方法
- The specified child already has a parent. You must call removeView() on the child's parent first.
- java反射---综合
- 我的第一篇博客文章
- Android应用被强制停止后无法接受广播解决方案
- Ubuntu14.04(64位)安装Intel Composer 2013 成功(20140722)
- ubuntu 下hadoop安装
- OCP 1Z0 053 190
- 简单文件操作 linux