public class Data {
private Double d1;
private Double d2;
public Double getD1() {
return d1;
}
public void setD1(Double d1) {
this.d1 = d1;
}
public Double getD2() {
return d2;
}
public void setD2(Double d2) {
this.d2 = d2;
}
}
public static void main(String[] args) {
Data data = new Data();
data.setD1(33.3);
Class c = data.getClass();
try {
for (Field field : c.getDeclaredFields()) {
String fieldName = field.getName();
String fieldType = field.getType().toString();
if(fieldName.equals("d1")){
System.out.println(fieldName + "\t" + fieldType);
Method m = c.getDeclaredMethod("getD1", field.getType());
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
为啥报错:
d1 class java.lang.Double
java.lang.NoSuchMethodException: com.dataservice.Data.getD1(java.lang.Double)
at java.lang.Class.getDeclaredMethod(Unknown Source)
at com.dataservice.WJFOtherTest.main(WJFOtherTest.java:134)