public class classUtil {
public void printMethodsInformation(Object obj){
Class c=obj.getClass();
System.out.print("类名为:"+c.getName());
Method[] method=c.getMethods();
for(int i=0;i<method.length;i++){
System.out.print(method[i].getReturnType().getSimpleName()+" ");
System.out.print(method[i].getName()+"(");
Class[] pt=method[i].getParameterTypes();
for(Class class1:pt){
System.out.print(class1.getSimpleName()+",");
}
System.out.println(")");
}
}
public void getClassField(Object o){
Class c=o.getClass();
Field[] f=c.getDeclaredFields();
for(Field field : f){
Class type=field.getType();
System.out.print(type.getSimpleName()+" ");
System.out.println(field.getName());
}
}
private void getconsMessage(Object o) {
Class c=o.getClass();
Constructor[] cons=c.getDeclaredConstructors();
for(Constructor con:cons){
System.out.print(con.getName()+"(");
Class[] parameters=con.getParameterTypes();
for(Class p:parameters){
System.out.print(p.getName()+",");
}
System.out.println(")");
}
}
public static void main(String[] args){
classUtil c=new classUtil();
String s="hello";
// c.printMethodsInformation(s);
// c.getClassField(new Integer(1));
c.getconsMessage(s);
}
}
用反射的方法获取一个类的信息
最新推荐文章于 2022-03-11 13:12:25 发布