public class MyTest {
private String name; public String getName() {
return name;
} public void setName(String name) {
this.name = name; }
} MyTest test =new MyTest();
test.setName("test");
Class c = test.getClass();
我想先遍历出MyTest的字段,然后根据对应的字段获取相应的值,不知道怎么解决?
private String name; public String getName() {
return name;
} public void setName(String name) {
this.name = name; }
} MyTest test =new MyTest();
test.setName("test");
Class c = test.getClass();
我想先遍历出MyTest的字段,然后根据对应的字段获取相应的值,不知道怎么解决?
解决方案 »
- 数组面试题: 今天去面试不会啊 郁闷 大哥们帮解决一下
- 面试题,jvm相当于那种设计模式
- 请教一个相当基础的问题,Java中为什么拥有类可以访问内部类的私有成员?
- 请教实现示波器功能的绘图实现
- 如何获得文件的创建时间??
- 怎么把一个轻型组件强制转化为重型组件?
- 菜鸟请教super的用法
- 菜鸟的问题:“Exception in thread "main" java.lang.NoClassDefFoundError: Hello”
- Java与Delphi、C++相比,哪一点值得我们留口水....;.
- 已经安装了JDK,并且配置好了环境,为什么还是运行不了,
- 想让窗口被关闭时弹出确认对话框,应该怎样操作?
- Integer[] 转 String[] 数组
import java.lang.reflect.Field;public class Test4Class { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Test4Class tc = new Test4Class();
Class c = tc.getClass();
Field[] fs = c.getDeclaredFields();
for (int i =0 ;i < fs.length;i++){
try {
System.out.println(fs[i].get(tc));
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
} private int i = 0;
private String str = "string";
private double d = 1.23;
}
private int studid; private String major; private double age; public Student() {
} public Student(int studid, String major, double age) {
this.studid = studid;
this.major = major;
this.age = age;
} @Override
public String toString() {
return "";
} public int getStudid() {
return studid;
} public void setStudid(int studid) {
this.studid = studid;
} public String getMajor() {
return major;
} public void setMajor(String major) {
this.major = major;
} public double getAge() {
return age;
} public void setAge(double age) {
this.age = age;
}
}import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;public class ProduceSQL {
public static void main(String[] args) {
Student stud=new Student(1058,"计算机科学与技术", 22);
productInsertSQL(stud);
} @SuppressWarnings("unchecked")
public static void productInsertSQL(Student stud) {
Class cs = stud.getClass(); Field field[] = cs.getDeclaredFields();
for (int i = 0; i < field.length; i++) {
String fieldname = field[i].getName();
//根据字段属性,构造方法
String method="get"+fieldname.substring(0, 1).toUpperCase()+fieldname.substring(1);
try {
//可以根据字段名称,打印你所希望的字段的值...
Method methodd = cs.getMethod(method, null);
Object returnobject = methodd.invoke(stud, null);
System.out.println(returnobject);
} catch (SecurityException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
}
}}