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