获取类的名称
获取该类的方法
获取方法的返回值类型
获取方法的名称
获取方法的参数的类型
package com.tsh.reflect; import java.lang.reflect.Method; public class ReflectDemo { static void main(String[] args) { //int的类类型 Class c1=int.; String的类类型,String的字节码 Class c2=String.; Class c3=double.; Class c4=void.; System.out.println(c1.getName());输出 int System.out.println(c2.getName());输出 java.lang.String ReflectDemo reflectDemo=new ReflectDemo(); printClass(reflectDemo); } /** * 打印类的信息 * @param obj */ printClass(Object obj){ Class c=obj.getClass(); System.out.println("类的名称:"+c.getName()); 获取该类的方法获取该类的public的方法 Method[] methods=c.getMethods(); for(Method method: methods){ 获取返回值类型 Class returnTypeClass=method.getReturnType(); String returnType=returnTypeClass.getSimpleName(); 获取方法的名称 String methodName=method.getName(); 获取参数的类型 Class[] paramClass=method.getParameterTypes(); String params= String(); int i=0; (Class param:paramClass){ if(i!=0){ params+=","+param.getSimpleName(); }else{ params+=param.getSimpleName(); } i++; } System.out.println(returnType+" "+methodName+"("+params+")"); } } }
返回结果
类的名称:com.tsh.reflect.ReflectDemo main(String[]) printClass(Object) void wait(long,int) long wait() boolean equals(Object)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。