【求助】有没有熟悉反射机制的大佬,帮我解个题,有偿!!!
java吧
全部回复
仅看楼主
level 1
LJ123乐园 楼主
2022年02月07日 10点02分 1
level 1
LJ123乐园 楼主
[泪][泪][泪][泪]求助啊!
2022年02月07日 11点02分 2
level 1
LJ123乐园 楼主
有没有大佬帮忙写一下[泪][泪][泪][泪]
2022年02月07日 11点02分 3
level 7
读取data文件内容,反射获取类的Method,调用invoke()方法传入需要执行方法的目标对象和参数
2022年02月07日 12点02分 4
level 4
这很容易呀。
2022年02月07日 12点02分 6
level 4
package com.luojie.demo;
import java.lang.reflect.Method;
public class A {
void test1(int a) {
System.out.println("test1," +a);
}
void test2(int a,int b) {
System.out.println("test2," +a+","+b);
}
void test3() {
System.out.println("test3");
}
void test4() {
System.out.println("test4");
}
public static void main(String[] args) throws Exception {
String m = "test1 10,test2 10 100,test3,test4";
A a = new A();
String[] split = m.split(",");
for (String s : split) {
String[] s1 = s.split(" ");
String methodName = s1[0];
int argsLen = s1.length - 1;
if(argsLen==0) {
Method method = A.class.getDeclaredMethod(methodName);
method.invoke(a);
}else {
Class[] methodTypes = new Class[argsLen];
Object[] methodArgs = new Object[argsLen];
for (int i = 0; i < argsLen; i++) {
methodTypes[i] = int.class;
methodArgs[i]= Integer.valueOf(s1[i+1]);
}
Method method = A.class.getDeclaredMethod(methodName,methodTypes);
method.invoke(a,methodArgs);
}
}
}
}
2022年02月07日 12点02分 9
有看不懂的地方私聊我,我没加IO读取文件的内容
2022年02月07日 12点02分
level 13
直接转账吧,你去百度就行
2022年02月07日 13点02分 10
level 10
看私信
2022年02月08日 03点02分 11
1