Public class Man{
private int age;
private String name;
... public int getAge(){
return age;
}
public int getName(){
return name;
}
..... public void setAge(int age){
this.age=age;
}
public void setName(String name){
this.name=name;
}
.....
}
Man man=new Man();
man.setAge(20);
man.setName("James");
...假设我不知道上面Man这个类有哪些属性,但我想的到它的对象(man)的属性名和属性值,请问大家能不能实现上述功能?若能,应该怎样做?
private int age;
private String name;
... public int getAge(){
return age;
}
public int getName(){
return name;
}
..... public void setAge(int age){
this.age=age;
}
public void setName(String name){
this.name=name;
}
.....
}
Man man=new Man();
man.setAge(20);
man.setName("James");
...假设我不知道上面Man这个类有哪些属性,但我想的到它的对象(man)的属性名和属性值,请问大家能不能实现上述功能?若能,应该怎样做?
解决方案 »
- java连接数据库问题 在线等!!!!!!!!!!!!!!!
- 请教“try{}里面含有return,后面带着finally{},问return后finally里面的句子还会不会执行,什么时候执行”
- 请问有经验的专家:当在用Java开发程序时,遇到不能解决问题时(或遇到一种新技术时),该如何解决,有什么更好的方法?
- Java程序读取哪种配置文件方便些呢?怎样读取.ini文件呢?
- String 类型如何转换成为 int类型
- 问:什么是comcat?
- 求一遍历树的算法!!!(UP有分!)急
- 有人能提供THINK IN JAVA 第二版的简体中文下载吗?
- clipse的中文使用手册,那位有呀?
- 为什么我在win2000下,缓冲去说找不到当前目录的文件?
- 提问初始化问题
- 请问,如果我们用工具开发,那Ant这个东西还有用吗?
public class Man {
private int age; private String name; Man(String name, int age) {
this.age = age;
this.name = name;
} public int getAge() {
return age;
} public String getName() {
return name;
} public void setAge(int age) {
this.age = age;
} public void setName(String name) {
this.name = name;
} public static void main(String[] args) throws Exception {
Man m = new Man("James", 20);
Class clazz = m.getClass();
Field[] f = clazz.getDeclaredFields();
String[] name = field2Name(f);
Object[] value = field2Value(f, m);
showNameAndValue(name, value); } public static void showNameAndValue(String[] name, Object[] value) {
for (int i = 0; i < name.length; i++) {
System.out.println("--" + i + "--");
System.out.println("name:" + name[i]);
System.out.println("Value:" + value[i]);
System.out.println("-- --");
} } public static String[] field2Name(Field[] f) {
String[] name = new String[f.length];
for (int i = 0; i < f.length; i++) {
name[i] = f[i].getName();
}
return name;
} public static Object[] field2Value(Field[] f, Object o) throws Exception {
Object[] value = new Object[f.length];
for (int i = 0; i < f.length; i++) {
value[i] = f[i].get(o);
}
return value;
}}