接上一篇
如果我们有一个需求:要求对象中有些属性不需要序列化
而且实际开发中确实也有这种情况
不是所有的对象属性都需要序列化的
假如我们有一个商品类
解决办法:
方式1: 如果某个属性不需要序列化,可以在属性的前面加一个关键字:transient
方式2:如果某个属性是static,那么也不会序列化。因为静态的变量不属于某个对象,而是整个类的,所以不需要随着对象的序列化而序列化。
然后再把系列化的代码写一遍测试一下
效果如下:
由此可见,sale字段确实没有被序列化
我们再看第二种方式,用静态修饰属性
如果在序列化的过程中有些属性不需要序列化的解决办法
方式1: 如果某个属性不需要序列化,可以在属性的前面加一个关键字:transient
方式2:如果某个属性是static,那么也不会序列化。因为静态的变量不属于某个对象,而是整个类的,所以不需要随着对象的序列化而序列化。