Field使用时的常见问题
2019-04-11 本文已影响0人
日更专用小马甲
本系列翻译自Oracle官方教程,半翻译,半读后感性质。文末会附上原文链接。
本节一共介绍了3个常见的问题:
首先,当使用反射的set
和get
方法时,编译器无法执行自动拆箱和装箱,因此,long
和Long
是不等价的。
接着是老生常谈的getFields()
和getDeclaredFields()
的差别。
最后,对于final
类型的字段,通常是不能通过set
方法赋值的。但Field
类继承了AccessibleObject
类,可以通过调用setAccessible()
方法后,强制修改字段的值。
原文链接:Troubleshooting