标记瞬态的正确方法是什么?

时间:2016-05-08 18:38:31

标签: java serialization transient

如果同一个对象中的不同类(是pitfallOne,pitfallTwo和pitfallThree,以下示例)中有多个引用就足以将其中一个引用为transient防止该对象的序列化(考虑到要对这些类进行序列化)?如果不是,应将其标记为transient

我不确定这里的班级结构是否重要,所以让它像这样:

class Zero {
    ...
}

class One {
    ...
    Zero pitfallOne = new Zero();
}

class Two {
    ...
    One instOne = new One();
    transient Zero pitfallTwo = instOne.pifallOne;
}

class Three {
    ...
    Two instTwo = new Two();
    Zero pitfallThree = instTwo.pifallTwo;
}

1 个答案:

答案 0 :(得分:0)

瞬态标记附加到类的字段,而不是附加到对象。由于每个类中都有一个新字段,因此应将其标记为瞬态。