javaSe-反射2

//创建实体类

package com.java.chap07.sec03;

public class Student {

private String name;
private Integer age;



public Student(String name) {
super();
this.name = name;
}
public Student(String name, Integer age) {
super();
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}

public void say(){
System.out.println("我的姓名:"+name);
}

@Override
public String toString() {
return "Student [name=" + name + ", age=" + age + "]";
}
}

 

package com.java.chap07.sec03;

import java.lang.reflect.Constructor;

public class Test1 {

public static void main(String[] args) {
Class<?> c=null;
try {
c=Class.forName("com.java.chap07.sec03.Student");//根据类路径获得Class
System.out.println(c.getName());
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}


Constructor<?> cons[]=c.getConstructors();//得到所有的构造方法
for(Constructor<?> con:cons){
System.out.println("构造方法:"+con);
}

 

Method mds[]=c.getMethods();//得到所有的方法
for(Method m:mds){
System.out.println("方法:"+m);
}

Field fs[]=c.getDeclaredFields();//得到所有的属性
for(Field f:fs){
System.out.println("属性:"+f);
}


}
}

 

posted @ 2017-03-01 10:00  小拽A  阅读(123)  评论(0编辑  收藏  举报