文章目录
transient关键字简述
将不需要序列化的属性前添加关键字transient,序列化对象的时候,这个属性就不会被序列化。
关于序列化:
Java序列化提供两种方式。
- 一种是实现Serializable接口
- 另一种是实现Exteranlizable接口。 需要重写writeExternal和readExternal方法,它的效率比Serializable高一些,并且可以决定哪些属性需要序列化(即使是transient修饰的),但是对大量对象,或者重复对象,则效率低。
代码:
public class TransientTest {
public static void main(String[] args) {
//序列化Person对象,再反序列化读取
Person person = new Person("张三", 22);
System.out.println("序列化前:");
System.out.println(person);
System.out.println(person.getOCCUPATION());
System.out.println(person.getTEST());
ByteOutputStream bos = null;
ObjectOutputStream oos = null;
ObjectInputStream ois = null;
try {
//序列化person
bos = new