java 序列化怎么标记为不可序列化的字段?

我是的序列化方法是这样的:
ObjectOutputStream oos = new ObjectOutputStream(stream);
oos.writeObject(o);
oos.flush();
oos.close();
需要序列化的对象是o,但是这个o里面有些字段是无法序列化的,而且我也不需要序列化它们,我怎么样加一个标记可以让ObjectOutputStream不去序列化它们呢?

慕哥9229398
浏览 1632回答 2
2回答

幕布斯6054654

java序列化中如果要标记为不可序列化的字段,可以使用关键字:tranisant修饰。Java的serialization提供了一种持久化对象实例的机制。当持久化对象时,可能有一个特殊的对象数据成员,我们不想 用serialization机制来保存它。为了在一个特定对象的一个域上关闭serialization,可以在这个域前加上关键字transient。transient是Java语言的关键字,用来表示一个域不是该对象串行化的一部分。当一个对象被串行化的时候,transient型变量的值不包括在串行化的表示中,然而非transient型的变量是被包括进去的。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java