首页 > 编程知识 正文

java反射获取类属性的方法,invoke方法详解

时间:2023-05-06 05:03:55 阅读:10923 作者:1888

import java.lang.reflect.Method;

公共类invoke tester {

公共int add (int param 1,int param2) {

返回param1param 2;

}

公共字符串echo (字符串消息) {

返回' Echo ' mesg;

}

publicstaticvoidmain (字符串[ ] args ) throws Exception { )。

class classtype=invoke tester.class;

objectinvokertester=classtype.new instance (;

methodaddmethod=classtype.get method ',new Class[] { int.class,

int.class };

//Method类的invoke(objectobj,Object args[] )方法接收的参数必须是目标参数。

//如果参数是基本类型数据,则需要将其转换为适当的包装类型对象。 invoke ) )方法的返回值始终是对象。

//如果实际调用的方法的返回类型是基本类型数据,则invoke ) )方法将其转换为相应的包装类型对象。

//再把它还给你

对象结果=add method.invoke (invoker tester,new Object[] {

新integer (100 )、新integer (200 );

在jdk5.0中形成装箱开箱结构的newinteger(100 )可以用100代替,系统自动在int和integer之间转换

system.out.println(result );

methodechomethod=classtype.get method (echo ),

new Class[] { String.class };

result=echo method.invoke (invoker tester,new Object[] { 'hello' } );

system.out.println(result );

}

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。