VerRan 发表于 2013-2-4 20:12:16

java反射动态调用方法

1.<div class="dp-highlighter"><div class="bar" />   
[*]package com.verran.ClassForName;      
[*]     
[*]<span />import java.lang.reflect.Method;         
[*]     
[*]<span />public class Methoder {         
[*]         
[*]    /**       
[*]     * @param args       
[*]     */         
[*]    public static void main(String[] args) throws Exception {         
[*]        // TODO 自动生成方法存根         
[*]                
[*]        Class c = Class.forName("com.verran.ClassForName.Test");         
[*]<span />//        Class ptypes[] ={Class.forName("java.lang.String")};         
[*]        Class types[] =new Class;         
[*]        types=Class.forName("java.lang.String");   
[*]        Method m = c.getMethod("sayHello",types);//第一个参数为调用的方法名。第二个为方法的返回值;类型      
[*]        Test t = new Test();         
[*]        m.invoke(t,"sayHello" );//第一个参数表示要调用的对象,后者为传给这个方法的参数      
[*]    }         
[*]         
[*]}   
页: [1]
查看完整版本: java反射动态调用方法