java 中 transient 序列化时,不需要保存标记字段的关键字。语法:transient ; 场景:1. 字段不需要序列化为对象状态;2. 字段包含敏感信息;3. 在反序列化中,可以通过其他方式获得字段。
如何在 Java 中声明 transient 函数?
在 Java 中,transient 函数是用来将字段标记为不需要序列化的字段的标记。这意味着包含在任何时候 transient 字段的对象序列化,字段不会作为对象状态的一部分写入流中。
语法:
立即学习"Java免费学习笔记(深入);
transient <type> <field-name>;
场景:
- 当字段不能作为对象状态的一部分进行序列化时。
- 当字段包含敏感或繁琐的信息时。
- 在反序列化中,可以通过其他方式获得字段。
实战案例:
假设我们有一个 Person 其中包含一个类 password 字段。由于它包含敏感信息,因此该字段不应序列化为对象状态的一部分。
public class Person implements Serializable { private transient String password; private String name; private int age; }
注意:
- transient 非静态成员变量只能使用关键字。
- transient 字段在序列化过程中被忽略,因此在反序列化过程中被设置为默认值。
- transient 字段不会被 writeObject 和 readObject 方法调用。
以上就是如何在这里 Java 中声明 transient 函数?详情请关注图灵教育的其他相关文章!