对象的序列化是指将对象转换为字节序列的过程

对象的反序列化是指将字节序列恢复对象的过程

主要有两种用途:

1、把对象的字节序列永久地保存在硬盘上,通常放在一个文件中。

2、在网络上传输对象的字节序列。

Person类

package com.zyz;

import java.io.Serializable;

/**
* Created by Administrator on 16-9-25.
*/
public class Person implements Serializable {
private String name;
private int age;
private String sex; public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
} public String getSex() {
return sex;
} public void setSex(String sex) {
this.sex = sex;
}
}

测试类

package com.zyz;

import java.io.*;
import java.text.MessageFormat; /**
* Created by Administrator on 16-9-25.
*/
public class TestObjSerializeAndDeserialize {
public static void main(String[] args){
// try {
// SerializePerson();
// } catch (IOException e) {
// e.printStackTrace();
// }
try {
       SerializePerson();
Person person=DeserializPerson();
System.out.println(MessageFormat.format("姓名:{0},年龄:{1},性别:{2}",person.getName(),person.getAge(),person.getSex()));
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
} private static void SerializePerson() throws IOException {
Person person=new Person();
person.setName("乔大爷");
person.setAge(40);
person.setSex("男");
ObjectOutputStream oo=new ObjectOutputStream(new FileOutputStream(new File("d:/person.txt")));
oo.writeObject(person);
System.out.println("文件序列化成功!");
oo.close();
} private static Person DeserializPerson() throws IOException, ClassNotFoundException {
ObjectInputStream ois=new ObjectInputStream(new FileInputStream(new File("d:/person.txt")));
Person person=(Person)ois.readObject();
System.out.println("Person对象反序列化成功!");
return person;
} }

最新文章

  1. 未能写入输出文件“c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\web\4b49f661\23a749fc\App_Web_default.aspx.cdcab7d2.zii776dc.dll”--“拒绝访问。 ” 解决方法:
  2. Java基础知识笔记(三:文件与数据流)
  3. XE3随笔12:TSuperTableString、TSuperAvlEntry
  4. HDU 5017 Ellipsoid 模拟退火第一题
  5. two sum - leetcode
  6. YUI3 CSS
  7. uboot命令分析+实现【转】
  8. Linux学习笔记总结--配置iptables防火墙
  9. 七牛云- Java 端 使用
  10. 母函数&&排列(模板)
  11. 使用C#代码追加和提交文件到SVN服务器
  12. python自学笔记(八)python语句
  13. 2018-2019-2-20175235 实验一 《Java开发环境的熟悉》实验报告
  14. 轻松测试 logstash 的配置文件
  15. 【mongoDB查询进阶】聚合管道(二) -- 阶段操作符
  16. LOJ #2234. 「JLOI2014」聪明的燕姿(搜索 + 数论)
  17. springBoot----aop--整合日志相关
  18. JS window与document
  19. java比较两个对象是否相等?
  20. 在 ServiceModel 客户端配置部分中,找不到引用协定“IpsBarcode.ScanService”的默认终结点元素。这可能是因为未找到应用程序的配置文件,或者是因为客户端元素中找不到与此协定匹配的终结点元素。

热门文章

  1. shell中判读文件存在的方法
  2. Objective-C之run loop详解[转]
  3. LPC2478调试___ads常见错误分析
  4. Linux RPM、TAR包管理
  5. python中logging
  6. listview 模仿用户点击事件。
  7. Excel 执行Sql 将查询结果输出到EXCEL指定位置
  8. 在requirejs中使用qunit
  9. 用VBS实现公司自动打卡
  10. mysql 复制表结构、表数据的方法