Java:访问类内的 transient 对象字段

标签 java object field transient

必须使用某些代码来控制从类中的任何方法访问私有(private) transient 对象字段。最佳实践是什么?

private transient MyClass object = null;

内部获取方法:

private MyClass getObject() {
    if (object == null)
        object = new MyClass();
    return object;
}
// use...
getObject().someWhat();

或“确保”方法:

private void checkObject() {
    if (object == null)
        object = new MyClass();
}
// use...
checkObject();
object.someWhat();

或者更聪明、更安全或更强大的东西?

最佳答案

transient 字段在序列化时丢失,但只有在反序列化后才需要它们,因此必须在 readObject 方法中将它们恢复为所需的内容...

关于Java:访问类内的 transient 对象字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1715144/

相关文章:

vba - 使用 VBA 在 Word 2010 页眉中插入两个字段

python - Django 空字段回退

java - PreferenceFragment 在 Fragment 布局上重叠

run方法中没有循环的Java线程

java - 从 XML 数组中读取共享首选项默认值

java - 使用 Gson 反序列化 JSON

javascript - 如何根据对象名称创建 javascript 对象的实例

javascript - 使用另一个对象数组和单个对象构造一个对象数组

Canvas 元素上的 HTML 文本字段

c++ - 类对象的 vector 及其实例化