java IO操作与字节流(五)对象序列化
2011-05-05 21:28
555 查看
对象序列化应用实例:
(1)import java.io.*;
public class objectio {
public static void main(String[] args)throws Exception
{
employee e1=new employee("qy1",23,3456);
employee e2=new employee("qy2",26,5346);
employee e3=new employee("qy3",24,5678);
FileOutputStream f=new FileOutputStream("object.txt");
ObjectOutputStream o=new ObjectOutputStream(f);
o.writeObject(e1);
o.writeObject(e2);
o.writeObject(e3);
FileInputStream f2=new FileInputStream("object.txt");
ObjectInputStream oi=new ObjectInputStream(f2);
employee e;
for(int i=0;i<3;i++)
{
e=(employee)oi.readObject(); //读取对象,构造时用不到其构造方法;
System.out.println(e.name+" "+e.age+" "+e.salary);
}
}
}
class employee implements Serializable{
String name;
int age;
int salary;
employee(String name,int age,int salary)
{
this.age=age;
this.name=name;
this.salary=salary;
}
}
(2)当一个对象被序列化时,只能保存非静态的成员,而静态的成员和方法不被保存:
(3)如果被序列化的成员有对象,如果对象成员可序列化,则其对象成员也被保存,否则,抛出异常,可通过transient标记,不对该对象序列化;
(1)import java.io.*;
public class objectio {
public static void main(String[] args)throws Exception
{
employee e1=new employee("qy1",23,3456);
employee e2=new employee("qy2",26,5346);
employee e3=new employee("qy3",24,5678);
FileOutputStream f=new FileOutputStream("object.txt");
ObjectOutputStream o=new ObjectOutputStream(f);
o.writeObject(e1);
o.writeObject(e2);
o.writeObject(e3);
FileInputStream f2=new FileInputStream("object.txt");
ObjectInputStream oi=new ObjectInputStream(f2);
employee e;
for(int i=0;i<3;i++)
{
e=(employee)oi.readObject(); //读取对象,构造时用不到其构造方法;
System.out.println(e.name+" "+e.age+" "+e.salary);
}
}
}
class employee implements Serializable{
String name;
int age;
int salary;
employee(String name,int age,int salary)
{
this.age=age;
this.name=name;
this.salary=salary;
}
}
(2)当一个对象被序列化时,只能保存非静态的成员,而静态的成员和方法不被保存:
(3)如果被序列化的成员有对象,如果对象成员可序列化,则其对象成员也被保存,否则,抛出异常,可通过transient标记,不对该对象序列化;
相关文章推荐
- Java学习笔记——IO操作之对象序列化及反序列化
- Java IO 中对象的序列化操作
- Java的IO操作(三) - 对象的序列化、ObjectInputStream和ObjectOutputStream类
- 【Java】IO操作之对象序列化及反序列化
- Java的IO操作(三) - 对象的序列化、ObjectInputStream和ObjectOutputStream类
- Java IO操作——对象序列化(Serializable接口、ObjectOutputStream、以及与Externalizable接口的用法和区别)
- Java笔记(7)-输入、输出流、File类、InputStream、Reader、文件字节流、文件字符流、缓冲流、随机流、数据流、对象流、序列化和对象克隆、Scanner解析文件、Console流
- java IO操作与字节流(七)管道流与线程联系实例
- JAVA IO——对象序列化解析及项目实战
- java IO 字节流、字符流操作总结一之File类
- java IO操作:字节流与字符流区别
- java IO操作:字节流与字符流区别
- java中对象序列化的读写操作
- JavaIO操作(1)字节流和字符流-2
- [Java] IO-05 ObjectIO (java 对象序列化)
- [Java 12 IO] Serializable 初步 ObjectOutputStream ObjectInputStream 将序列化的对象打出来
- java-IO操作——使用字节流读写数据
- java IO操作与字节流(八)过滤流输入输出基本数据类型
- Java中List或者HashMap对象-序列化和反序列化并附读写文件操作
- Java的IO操作(二) - 带缓冲区的流对象、写入基本数据类型、实现命令行中的copy命令