java getMethod方法和invoke方法(看代码)
packagecom.mzsds.wlk;importjava.lang.reflect.InvocationTargetException;importjava.uti...
package com.mzsds.wlk;
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String... args) throws NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, InstantiationException {
// List<Account> acc = new ArrayList<Account>();
// List<Meet> meet = new ArrayList<Meet>();
// Email email = new Email();
Account a = new Account();
Meet m = new Meet();
a.setName("acc");
m.setName("meet");
// acc.add(a);
// meet.add(m);
System.out.println(a.getName());
//大哥哥大姐姐对应getMethod方法和invoke方法,学的头疼。求一个通俗的解释, 22等价于25吗?
System.out.println(a.getClass().getMethod("getName").invoke(a.getClass().newInstance()));
// boolean b = email.send(acc, meet);
}
} 展开
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String... args) throws NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, InstantiationException {
// List<Account> acc = new ArrayList<Account>();
// List<Meet> meet = new ArrayList<Meet>();
// Email email = new Email();
Account a = new Account();
Meet m = new Meet();
a.setName("acc");
m.setName("meet");
// acc.add(a);
// meet.add(m);
System.out.println(a.getName());
//大哥哥大姐姐对应getMethod方法和invoke方法,学的头疼。求一个通俗的解释, 22等价于25吗?
System.out.println(a.getClass().getMethod("getName").invoke(a.getClass().newInstance()));
// boolean b = email.send(acc, meet);
}
} 展开
展开全部
不纠结过多的细节的话,等价。
“巧妇难为无米之炊”在这句话说明了java里大多数方法调用的必要内容:
巧妇(谁)、为炊(干很么)、米(干活的原材料,非必需)
1、a.getName()
知道“巧妇(a)”,知道“为炊(getName)”
总结:【“巧妇”做“为炊”这件事】
2、a.getClass().getMethod("getName").invoke(a.getClass().newInstance())
1)a.getClass().getMethod("getName")
“为炊(getName)”的另一个说法
2)a.getClass().newInstance()
有“为炊”没用,还得找个“巧妇”,这句就是干这个的
3)invoke
牵个线
总结:【“为炊”这件事“invoke”帮你找个“巧妇”来做】
不要纠结,既然你还困惑这两个的差异,那就说明你还没到需要了解的时候。
“巧妇难为无米之炊”在这句话说明了java里大多数方法调用的必要内容:
巧妇(谁)、为炊(干很么)、米(干活的原材料,非必需)
1、a.getName()
知道“巧妇(a)”,知道“为炊(getName)”
总结:【“巧妇”做“为炊”这件事】
2、a.getClass().getMethod("getName").invoke(a.getClass().newInstance())
1)a.getClass().getMethod("getName")
“为炊(getName)”的另一个说法
2)a.getClass().newInstance()
有“为炊”没用,还得找个“巧妇”,这句就是干这个的
3)invoke
牵个线
总结:【“为炊”这件事“invoke”帮你找个“巧妇”来做】
不要纠结,既然你还困惑这两个的差异,那就说明你还没到需要了解的时候。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询