import java.io.Serializable;
public class entity implements Serializable {
private String name;
private int age;
private String sex;
private transient String tra;
public String getTra() {
return tra;
}
public void setTra(String tra) {
this.tra = tra;
}
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;
}
public entity(){};
public entity(String name,int age ,String sex,String tra){
this.name=name;
this.age=age;
this.sex=sex;
this.tra=tra;
};
}
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutput;
import java.io.ObjectOutputStream;
public class serialise {
/**
* @param args
* @throws IOException
* @throws ClassNotFoundException
*/
public static void main(String[] args) throws IOException, ClassNotFoundException {
// TODO Auto-generated method stub
entity en=new entity("zhangsan",34,"男","trasiren");
try {
FileOutputStream out=new FileOutputStream(new File("date.ser"));
ObjectOutputStream os=new ObjectOutputStream(out);
os.writeObject(en);
os.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
FileInputStream fi=new FileInputStream(new File("date.ser"));
ObjectInputStream oi=new ObjectInputStream(fi);
entity en2=(entity)oi.readObject();
oi.close();
System.out.println(en2.getName()+"\n"+en2.getAge()+"\n"+en2.getSex()+"\n"+en2.getTra());
}
}
注意事项
1.该对象必须实现serialitable 接口
2.该对象的串行化成员必须是非静态成员变量,即不能保存任何的成员方法和静态的成员变量,而且串行化保存的只是变量的值,对于变量的任何修饰符,都不能保存。而对于某些类型的对象,其状态是瞬时的,这样的对象是无法保存其状态的,例如一个Thread对象,或一个FileInputStream对象,对于这些字段,我们必须用transient关键字标明 。
3、要串行化一个对象,必须与一定的对象输入/输出流联系起来,通过对象输出流将对象状态保存下来,再通过对象输入流将对象状态恢复。
分享到:
相关推荐
对象序列化 串行化 实现java对象的保存
Java 串行化是Java平台中的一个重要特性,它允许对象的状态被转换成字节流,以便存储、网络传输或在不同时间点恢复。这在分布式系统、持久化存储以及跨进程通信等场景中非常常见。Java 串行化主要通过实现`java.io....
“串行化”一词在这里可能指的是将对象转换为连续的数据流,以便存储或在网络上传输。在C#中,可以使用各种类库来实现这一点,如`System.Xml.Serialization`用于XML序列化,`System.Runtime.Serialization....
【Java对象的串行化】是指将Java对象的状态转换为字节序列的过程,这使得对象可以在需要时重新创建,从而实现对象的持久化。对象串行化是Java平台的一个核心特性,它允许对象的状态被保存并能够在不同的时间点或者在...
### Java序列化详解 在Java开发中,序列化是一个非常重要的概念,它涉及到对象的状态转换为可以存储或传输的形式,并且能够在之后将其恢复为原始形式的过程。本文将深入探讨Java序列化的各个方面,包括其概念、原理...
在Java编程语言中,`transient`关键字与对象的序列化(serialization)机制密切相关,它在处理对象状态的持久化时扮演着关键角色。本文将深入探讨`transient`关键字的功能、用途以及它如何影响Java对象的序列化过程。 ...
在标题和描述中提到的“GDI+的Image类的序列化,串行化”是指将`Image`对象的数据转换为字节流,以便存储或在网络上传输,然后能够恢复到原来的图像对象。这一过程对于保存用户界面的状态、实现图像数据的持久化或者...
### MFC串行化的基本应用 #### 一、串行化概述 串行化(Serialization)是计算机科学中的一个重要概念,特别是在数据存储和传输领域。简单来说,串行化就是将对象的状态信息转换为可以存储或传输的形式的过程;而...
注意,为了确保能够正确地反序列化,所有参与串行化的类型必须是可序列化的,可以通过在类声明上添加`[Serializable]`特性来标记。 五、最佳实践 1. 尽量避免对不可控的第三方类型进行串行化,因为它们可能没有实现...
串行化的基本过程包括两个主要步骤:序列化和反序列化。序列化是指将对象的状态转换为字节流的过程,而反序列化则是将字节流恢复为原来的对象实例。在VB.NET中,可以使用.NET框架提供的System.Runtime.Serialization...
文档串行化(Serialization)是MFC中实现文件保存和加载的关键机制,它允许将文档对象的状态转换为字节流,以便于存储到磁盘或在网络上传输。下面我们将深入探讨MFC文档的串行化以及如何实现保存功能。 **1. MFC...
它包含了许多类,其中一部分是用来处理串行化,即数据的序列化和反序列化过程。串行化是将对象的状态转换为可存储或传输的形式,如文件、数据库或网络流,以便稍后恢复该状态的过程。在MFC中,`CObject`类是所有MFC...
1. **序列化标识符**:每个可串行化的类都可以包含一个`private static final long serialVersionUID`字段,这个字段用于版本控制。当类的结构发生变化时,如果没有正确更新这个值,反串行化可能会失败。如果省略此...
在我们深入探讨C#序列化和反序列化之前我们先要明白什么是序列化,它又称串行化,是.NET运行时环境用来支持用户定义类型的流化的机制。序列化就是把一个对象保存到一个文件或数据库字段中去,反序列化就是在适当的...
8. **自定义序列化行为**:除了使用系统提供的类,还可以创建自定义的串行化器,实现IFormatter接口,或者使用System.Text.Json库来自定义JSON串行化行为。 总之,对象串行化是C#中一个非常实用的技术,它在数据...
数据串行化(Serialization)是将对象的状态转换为可以存储或传输的形式,通常是二进制流,以便在需要时能够还原。这个过程涉及到将对象的数据成员和结构编码为字节序列,然后写入持久化的存储介质,如磁盘文件。在...
串行化是微软提供的用于对对象进行文件I/O的一种机制,该机制在框架(Frame)/文档(Document)/视图(View) 模式中得到了很好的应用。很多人对什么是串行化、怎么使对象具有串行化能力和如何使用串行化功能等问题都 不甚...
Java 序列化机制 Java 序列化机制是一种将对象状态写入 Byte 流里的技术,并可以从其它地方把该 Byte 流里的数据读出来,重新构造一个相同的对象。这种机制允许将对象通过网络进行传播,并可以随时把对象持久化到...
Java 序列化机制 Java 序列化是将一个对象的状态写入一个 Byte 流里,并且可以从其它地方把该 Byte 流里的数据读出来,重新构造一个相同的对象。这种机制允许你将对象通过网络进行传播,并可以随时把对象持久化到...
3. 序列化配置:保存和加载应用程序配置信息。 4. 对象的跨进程/跨机器共享。 VB.NET中的串行化主要分为两种类型: 1. XML串行化:使用System.Xml.Serialization命名空间中的类,如XmlSerializer,将对象转换为XML...