课程咨询 :186 8716 1620      qq:2066486918

昆明Java培训 > 达内新闻 > [javaSE知识]反射-Class类的基本操作
  • [javaSE知识]反射-Class类的基本操作

    发布:昆明Java培训      来源:达内新闻      时间:2016-09-28

  • 昆明Java培训机构的老师给大家讲反射-Class类的基本操作

    获取类的名称

    获取该类的方法

    获取方法的返回值类型

    获取方法的名称

    获取方法的参数的类型

    package com.tsh.reflect;

    import java.lang.reflect.Method;

    public class ReflectDemo {

    public static void main(String[] args) {

    //int的类类型

    Class c1=int.class;

    //String的类类型,String的字节码

    Class c2=String.class;

    Class c3=double.class;

    Class c4=void.class;

    System.out.println(c1.getName());//输出int

    System.out.println(c2.getName());//输出java.lang.String

    ReflectDemo reflectDemo=new ReflectDemo();

    printClass(reflectDemo);

    }

    /**

    *打印类的信息

    * @param obj

    */

    public static void 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=new String();

    int i=0;

    for(Class param:paramClass){

    if(i!=0){

    params+=","+param.getSimpleName();

    }else{

    params+=param.getSimpleName();

    }

    i++;

    }

    System.out.println(returnType+" "+methodName+"("+params+")");

    }

    }

    }

    返回结果

    类的名称:com.tsh.reflect.ReflectDemo

    void main(String[])

    void printClass(Object)

    void wait(long,int)

    void wait(long)

    void wait()

    boolean equals(Object)

    了解详情请登陆昆明达内Java培训官网(km.Java.tedu.cn)!

    推荐文章

上一篇:java程序员:设计模式之单例模式

下一篇:java培训:UML类图画法及其之间关系

最新开班日期  |  更多

Java--零基础全日制班

Java--零基础全日制班

开班日期:11/30

Java--零基础业余班

Java--零基础业余班

开班日期:11/30

Java--周末提升班

Java--周末提升班

开班日期:11/30

Java--零基础周末班

Java--零基础周末班

开班日期:11/30

  • 网址:http://km .java.tedu.cn      地址:昆明市官渡区春城路62号证券大厦附楼6楼
  • 课程培训电话:186 8716 1620      qq:2066486918    全国服务监督电话:400-827-0010
  • 服务邮箱 ts@tedu.cn
  • 2001-2016 达内国际公司(TARENA INTERNATIONAL,INC.) 版权所有 京ICP证08000853号-56