对象的序列化和反序列化浅析
对象的序列化和反序列化浅析 什么是序列化和反序列化? 对象序列化,就是将Object转换成byte序列,反之叫对象的反序列化 序列化流(ObjectOutputStream),是过滤流----writeObject 反序列化流(ObjectInputStream)---readObject 序列化接口(Serializable)介绍 这是一个位于java.io包下的空接口, 没有任何方法,只是一个标准 ,这不更是接口的精髓所在嘛,哈哈,对于接口的概念还比较模糊的朋友可参考我的这一篇博文: Java基础之抽象类与接口 此外,对象必须实现此序列化接口 ,才能进行序列化,否则将抛出异常 transient关键字 在实际开发过程中,我们常常会遇到这样的问题,这个类的有些属性需要序列化,而其他属性不需要被序列化,打个比方,如果一个用户有一些敏感信息(如密码,银行卡号等),为了安全起见,不希望在网络操作(主要涉及到序列化操作,本地序列化缓存也适用)中被传输,这些信息对应的变量就可以加上transient关键字。换句话说,这个字段的生命周期仅存于调用者的内存中而不会写到磁盘里持久化。 总之,java 的transient关键字为我们提供了便利,你只需要实现Serilizable接口,将不需要序列化的属性前添加关键字transient,序列化对象的时候