黑马程序员技术交流社区
标题: 对象的序列流 [打印本页]
作者: 心在左边跳 时间: 2015-7-9 14:10
标题: 对象的序列流
操作对象
ObjectInputStream和ObjectOutputStream
- 被操作的对象需要Serializable(标记接口)
ObjectOutputStream 和 ObjectInputStream 分别与 FileOutputStream 和 FileInputStream 一起使用时,可以为应用程序提供对对象图形的持久存储。
静态不能被序列化,序列化的是堆内的对象,静态的在方法区
- import java.io.*;
- public class ObjectStreamDemo {
- public static void main(String[] args) throws Exception {
- writeObj();
- readObj();
- }
- //写入对象
- public static void writeObj() throws IOException{
- ObjectOutputStream oos= new ObjectOutputStream(new FileOutputStream("obj.txt"));
- oos.writeObject(new Person("lisi",39));
- oos.close();
- }
- //读取对象
- public static void readObj() throws IOException, ClassNotFoundException{
- ObjectInputStream ois= new ObjectInputStream(new FileInputStream("person.obj"));
- Person p=(Person)ois.readObject();
- System.out.println(p);
- ois.close();
- }
- }
- //该接口没有方法,称为标记接口
- class Person implements Serializable{
- String name;
- //transient修饰表示虽然在堆内存中,不可被序列化
- transient int age;
- Person(String name,int age){
- this.name=name;
- this.age=age;
- }
- public String toString(){
- return this.name+":"+this.age;
- }
- }
复制代码
作者: Love丶cd 时间: 2015-7-9 14:32
眼花缭乱那。。。。。呵呵呵呵呵呵
作者: 心在左边跳 时间: 2015-7-9 14:34
为啥?我写的乱七八糟?
作者: fmi110 时间: 2015-7-9 16:00
哥们 就花了20天就把基础全看完了 速度好看啊
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |