Java记录 -86- Reflection API的使用示例进阶2

页面导航:首页 > 软件编程 > Java编程 > Java记录 -86- Reflection API的使用示例进阶2

Java记录 -86- Reflection API的使用示例进阶2

来源: 作者: 时间:2016-01-21 09:39 【

获取指定类下的信息:所有方法和属性public class DumpClassInfo { public static void main(String[] args) throws Exception{ //Reflection API的基本作用 Cl...
获取指定类下的信息:所有方法和属性
 
public class DumpClassInfo {

    public static void main(String[] args) throws Exception{
        //Reflection API的基本作用
        Class<?> classtype = Class.forName("my.reflect.Customer");
        Method[] methods = classtype.getDeclaredMethods();
        //获取指定类下的所有方法,包含私有方法。(运行时所有方法)
        for(Method method : methods){
            System.out.println(method);
        }
        Field[] fields = classtype.getDeclaredFields();
        //获取指定类下的所有属性,包含私有属性。(运行时所有属性)
        for(Field field : fields){
            System.out.println(field);
        }
    }
}
class Customer{

    private long id;
    private String name;
    private int age;
     
    public Customer(){}
     
    public Customer(String name, int age){
        this.name = name;
        this.age = age;
    }
    public long getId() {
        return id;
    }
    public void setId(long id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
}

 

 
以上程序输出结果:
 
public void my.reflect.Customer.setId(long)
public int my.reflect.Customer.getAge()
public void my.reflect.Customer.setAge(int)
public java.lang.String my.reflect.Customer.getName()
public long my.reflect.Customer.getId()
public void my.reflect.Customer.setName(java.lang.String)
private long my.reflect.Customer.id
private java.lang.String my.reflect.Customer.name
private int my.reflect.Customer.age

 

 
Tags:

文章评论

最 近 更 新
热 点 排 行
Js与CSS工具
代码转换工具

<