Method类invoke方法的使用
/**
* Method的使用方法
* @author Callan
*
*/
public class Names {
public String firstName = "Callan";
public String lastName = "Wang";
public String getFullName(){
return firstName + " " + lastName;
}
public String getFullName(String firstName,String lastName){
return firstName + " " + lastName;
}
}
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
/**
* Method的使用方法
* @author Callan
*
*/
public class Test {
public static void main(String[] args) throws SecurityException, NoSuchMethodException, IllegalArgumentException, IllegalAccessException, InvocationTargetException {
Names methods = new Names();
// 调用getFullName()方法
Method method1 = methods.getClass().getMethod("getFullName");
Object obj1 = method1.invoke(methods, null);
System.out.println(obj1);
// 调用getFullName(String firstName,String lastName)方法
Method method2 = methods.getClass().getMethod("getFullName", new Class[]{String.class,String.class});//方法带有两个String类型的参数
// invoke(从中调用基础方法的对象,用于方法调用的参数)
Object obj2 = method2.invoke(methods, new String[]{"Callan","Wang"});
System.out.println(obj2);
}
}
分享到:
相关推荐
java反射机制描述及Method.invoke解释
主要介绍了详解Java中Method的Invoke方法,需要的朋友可以参考下
主要介绍了Java Method类及invoke方法原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
主要介绍了Java反射机制及Method.invoke详解,本文讲解了JAVA反射机制、得到某个对象的属性、得到某个类的静态属性、执行某对象的方法、执行某个类的静态方法等内容,需要的朋友可以参考下
java反射机制详解及Method.invoke解释.pdf
Method,invoke,getMethod等反射私有方法和私有属性
package methodinvoke; import java.lang.reflect.Method; public class Test { public String function () { return "调用function"; } @SuppressWarnings("unchecked")
method.invoke(owner, args):执行该Method,invoke方法的参数是执行这个方法的对象,和参数数组。返回值是Object,也既是该方法的返回值。 4. 执行某个类的静态方法 public Object invokeStaticMethod(String ...
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke...
title invoke method of superclass.
这个文章是某位高人所写,委托及其异步运用写得很精辟(老有转c#的同学问这个,其实他们不知道这玩意跟指针没多大区别,只是微软把他封了一层又一层而已,看明白了用就行了).不过这个异步是上古写法了,现在都用async~...
invoke method of superclass Source Code for Linux.
Chp15 反射Key Point ●Class 对象及其基本操作●Method 对象以及invoke 方法●标注练习 1. (类对象)要获得类对象,有三种不同的方式,分别为_____________________、___________________、_____________________...
1. 反射: Class 类的实例表示正在运行的 Java... 例如:@Target(ElementType.METHOD)//意味着@Override只能在普通方法上使用 public @interface Override { } 2. @Retention
Java程序的基本结构练习:嵌入调用多个方法请在中嵌入并调用多个方法。在提交请求之前,您要在本地确保所有代码已经编译通过,并通过了测试( mvn clean verify )注意!我们只允许您修改以下文件,对其他文件的修改...
【微信小程序-毕设期末大作业】k-push小程序(含后端源码).zip 【微信小程序-毕设期末大作业】k-push小程序(含后端源码).zip 【微信小程序-毕设期末大作业】k-push小程序(含后端源码).zip ...
//第二个参数method,被代理对象的接口方法 @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { System.out.println("做前置工作"); System.out.println("-------...
这样你就可以使用 Constructor 创建新的对象,用 get() 和 set() 方法读取和修改与 Field 对象关联的字段,用invoke() 方法调用与 Method 对象关联的方法。 另外,还可以调用 getFields() getMethods
public static void main(String[] args) throws Exception{ ... method1.invoke(obj, new Object[]{"222"}); Method method2=c.getMethod(method_name, new Class[0]); method2.invoke(obj, new Object[0]); }