getdeclaredfields()傳回class中所有的字段,包括私有字段。例證:
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIn5GcuIXY0N3Xu92Yp9CXzV2Zh1WavwVbvNmLllXZ0lmL3gjN5gzN3gjMxcHavw1LcpDc0RHaiojIsJye.png)
package com.test.bean;
import java.sql.timestamp;
public class person2 {
private int id;
private int age;
private string personname;
private timestamp birthdate;
public string identitify;
protected string address;
string phone;
}
@test
public void test_getdeclaredfields() {
field[]fields=person2.class.getdeclaredfields();
for (int i = 0; i < fields.length; i++) {
field field = fields[i];
system.out.println(field.getname());
}
}
運作結果:
id
age
personname
birthdate
identitify
address
phone
getfields 隻傳回公共字段,即有public修飾的字段。例證:
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIn5GcuIXY0N3Xu92Yp9CXzV2Zh1WavwVbvNmLllXZ0lmL3gjN5gzN3gjMxcHavw1LcpDc0RHaiojIsJye.png)
field[]fields=person2.class.getfields();
運作結果如下:
總結:
(1)getdeclaredfields()傳回class中所有的字段,包括私有字段;
(2)getfields 隻傳回公共字段,即有public修飾的字段