嗯,反思真的是你对这个的唯一希望。这将是您无需过多关注其可见性修饰符即可检查对象字段的唯一方法。
Entity entity = new Entity();
for(Field f : entity.getClass().getDeclaredFields()) {
try {
f.setAccessible(true);
System.out.println(f.get(entity));
} catch(IllegalAccessException e) {
e.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)
但是,我确实想强烈警告您重置该字段的可访问性。
如果您在高并发环境中运行,并且在完成后立即禁用可访问性,您将遇到在一个线程中删除可访问性的情况,因为您将要在另一个线程中阅读它,这将导致一个巨大的、令人困惑的混乱。
在这一点上,您拥有可见性修饰符这一事实变得没有实际意义,您可能只想使用 part-and-parcel getter(或者将字段设为public,这让很多人感到奇怪)。
| 归档时间: |
|
| 查看次数: |
4279 次 |
| 最近记录: |