java中由类名和方法名字符串实现其调用
2012-12-02 20:21
519 查看
js里通过eval()函数,在知道某个方法名是可以实现调用该方法,那么在java里边又怎么实现的呢?
java里边是通过反射机制来实现,代码如下:
public class Test {
public static void main(String[] args) throws Exception {
String className = "com.runqianapp.ngr.alias.example.FunClass";
String methodName = "sayHello";
Class clz = Class.forName(className);
//
Object obj = clz.newInstance();
//获取方法
Method m = obj.getClass().getDeclaredMethod(methodName, String.class);
//调用方法
String result = (String) m.invoke(obj, "aaaaa");
System.out.println(result);
}
}
class FunClass{
public String sayHello(String s){
System.out.println(s);
return "hello!";
}
}
java里边是通过反射机制来实现,代码如下:
public class Test {
public static void main(String[] args) throws Exception {
String className = "com.runqianapp.ngr.alias.example.FunClass";
String methodName = "sayHello";
Class clz = Class.forName(className);
//
Object obj = clz.newInstance();
//获取方法
Method m = obj.getClass().getDeclaredMethod(methodName, String.class);
//调用方法
String result = (String) m.invoke(obj, "aaaaa");
System.out.println(result);
}
}
class FunClass{
public String sayHello(String s){
System.out.println(s);
return "hello!";
}
}
相关文章推荐
- java中由类名和方法名字符串实现其调用【反射机制】
- java中由类名和方法名字符串实现其调用
- java JNI 实现原理 (五) JNI方法解释调用
- JS中通过方法名字符串调用方法
- 三种方法实现java调用Restful接口
- 利用JNI在vs2010上实现c++调用Java类方法
- 巧用C#做中间语言 实现Java调用.net DLL的方法
- 如何在Java中实现远程方法调用
- 巧用C#做中间语言 实现Java调用.net DLL的方法
- java反射调用main方法,private方法实现
- Android Studio Jni开发(二)实现Native调用java方法和Native调用Android API
- JSP 实现 之 调用java方法实现MySQL数据库备份和恢复
- JavaScript中模拟实现类似于Java的super关键字调用父类中同名方法
- Java程序调用javascript等脚本的实现方法
- java的静态方法可以直接用类名调用的理解
- java方法中 json字符串怎么根据名字来调用
- Java的RMI远程方法调用实现和应用
- Java调用C(Linux下实现Java本地方法)
- Android中WebView实现Javascript调用Java类方法
- java中利用反射机制实现调用给定为字符串的方法名