对象串行化

  • ObjectInputStream类

  • readObject()

  • ObjectOutputStream类

  • writeObject()

  • Serializable接口

对象的寿命通常随着生成该对象的程序的终止而终止。有时候,可能需要将对象的状态保存下来,在需要时再将对象恢复。我们把对象的这种能记录自己的状态以便将来再生的能力。叫作对象的持续性(persistence)。
对象通过写出描述自己状态的数值来记录自己,这个过程叫对象的串行化(Serialization)。也就是说能够将对象进行存档。
串行化的主要任务是写出对象实例变量的数值。如果变量是另一对象的引用,则引用的对象也要串行化。
串行化可以使得对象成为永久性,对象在创建它的程序外仍能够存在和起作用,被存储的对象中包含了可在程序中恢复的信息。

package SerializableDemo;

import java.io.Serializable;

public class serializableDemo {

    public static void main(String[] args) {

    }

}

class Hero implements Serializable{
/**
* 这是一个可串行化的对象
*/ //是自动生成的唯一标识
private static final long serialVersionUID = 1L; //对象属性
private String nickName;
private transient String password;//该变量为暂存变量,不被串行化。
int level; //构造函数
public Hero(){ }
public Hero(String nickName,String password,int level){
this.nickName = nickName;
this.password = password;
this.level=level;
} //setter和getter
public String getNickName() {
return nickName;
}
public void setNickName(String nickName) {
this.nickName = nickName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public int getLevel() {
return level;
}
public void setLevel(int level) {
this.level = level;
}
}

最新文章

  1. 面向对象day1
  2. log4j配置生成日志保存在数据库
  3. Google推荐的图片加载库Glide介绍
  4. 谈"自驱力"
  5. 动手学servlet(三) 请求头和响应头信息
  6. ssl/https双向验证的配置
  7. shell常用代码积累
  8. 问题-PopupMenu是哪个控件调用弹出的?
  9. Codeforces 568B Symmetric and Transitive
  10. java nio 网络框架实现(转)
  11. 通过实例解释LinuxC下argc,argc[]的意义
  12. python学习笔记 改变字符串中的某一位
  13. C语言第七次博客作业--一二维数组
  14. C语言指针作业总结
  15. RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.2->新增模块管理界面导出功能(可按条件导出)
  16. 网页三剑客之HTML
  17. laravel服务容器
  18. gradle根据不同渠道设置不同的开屏启动页
  19. [CF1131F] Asya And Kittens
  20. spring redis @Cacheable注解使用部分错误及无效原因

热门文章

  1. 漫谈Entity-Component-System
  2. SpringBoot 自动装配原理
  3. VBA工程设置密码
  4. 真正“搞”懂HTTP协议04之搞起来
  5. Postman使用指导
  6. Android开发之线程间通信
  7. 一张VR图像帧的生命周期
  8. redis集合 实现 队列
  9. python基础re模块与正则
  10. 前端知识之JS(javascirpt)