首页 > 其他 > 详细

反射-获取方法信息

时间:2017-10-25 17:43:01      阅读:270      评论:0      收藏:0      [点我收藏+]
测试类:
public
class Test { public static void main(String[] args) { ClassDemo3 classDemo3 = new ClassDemo3(); String string = "hello"; printClassMessage(string); } }

package classes;


import com.sun.org.apache.xpath.internal.SourceTree;

import java.lang.reflect.Method;

public class ClassDemo3 {
    /*打印类的信息,包括成员变量,和方法*/
    public static void printClassMessage(Object obj) {
        //获取类的信息,首先要获得类的类类型
        Class c = obj.getClass();//传递的是哪个子类对象,c就是盖子类的类类型
        //获取类的名称
        System.out.println("参数类的名称是: " + c.getName());
        /*Method 类, 方法的对象, 一个成员变量方法就是一个Method对象
        getMethods()方法获取的是所有的public方法,包括父类继承而来的
        getDeclaredMethods() 获取的是所有该类自己声明的方法,不问访问权限*/
        Method[] ms = c.getMethods();
        for(Method m : ms){
            //得到方法的返回值的类类型
            Class returnType = m.getReturnType();
            System.out.print("returnType : " + returnType.getName() + " <--");
            //得到方法名
            System.out.println("方法名:" + m.getName());

            //获取参数类型
            Class[] paramTypes = m.getParameterTypes();
            for(Class classs : paramTypes){
                System.out.println("参数列表中的参数类类型 : " + classs.getName());
            }
        }

    }

}

 

 

 

反射-获取方法信息

原文:http://www.cnblogs.com/wangnuo/p/7730018.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!