`
xiaobian
  • 浏览: 580861 次
  • 来自: 北京
社区版块
存档分类
最新评论

Java中java.io.Serializable接口的应用

    博客分类:
  • Java
阅读更多

在Java中java.io.Serializable 用于实现对象的序列化而开发的接口。

 

java.io.Serializable接口是一个没有任何方法和属性的接口只提供一个标示的作用。

 

所有要序列化的对象都要实现Serializable接口。

 

未实现序列化接口的对象进行序列化的时候发生的错误。

java.io.NotSerializableException: com.javaeye.xiaobian.seri.User
	at java.io.ObjectOutputStream.writeObject0(Unknown Source)
	at java.io.ObjectOutputStream.writeObject(Unknown Source)
	at com.javaeye.xiaobian.seri.SerialzeTest.main(SerialzeTest.java:19)

 

序列化:

 

	                               File test = new File("e:\\test.seri");

			FileOutputStream out = new FileOutputStream(test);
			ObjectOutputStream oout = new ObjectOutputStream(out);
			User user = new User();
			user.setName("example1");
			oout.writeObject(user);

			FileInputStream in = new FileInputStream(test);
			ObjectInputStream oin = new ObjectInputStream(in);
			User u = (User) oin.readObject();
			System.out.println(u.getName());
			System.out.println(u.getPass());

 

User类:

 

public class User implements Serializable {

	private static final long serialVersionUID = -7020619477594468968L;
	private String name;
	private String pass;

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getPass() {
		return pass;
	}

	public void setPass(String pass) {
		this.pass = pass;
	}
}

 

 

serialVersionUID的作用:

 

1.先保存一个序列化的对象User。

2.更改对象的属性添加Pass属性。

3.反序列化User对象这个时候获取的Pass属性为null。

4.如果没有serialVersionUID属性则会抛出异常。

分享到:
评论

相关推荐

    java.io.Serializable序列化问题

    java.io.Serializable序列化问题

    stuts2.2_API文档

    java.lang.Throwable (implements java.io.Serializable) java.lang.Exception java.lang.RuntimeException com.opensymphony.xwork2.XWorkException (implements com.opensymphony.xwork2.util.location.Locatable...

    java中的IO操作总结(四)

    java中的IO操作总结(四) 前面已经把java io的主要操作讲完了 这一节我们来说说关于java io的其他内容 Serializable序列化 实例1:对象的序列化 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23...

    java 中序列化NotSerializableException问题解决办法

    主要介绍了java 中序列化NotSerializableException问题解决办法的相关资料,这里对序列化问题进行描述说明,并提供解决办法,希望能帮助到大家,需要的朋友可以参考下

    Hibernate注解映射联合主键

    第一、将联合主键的字段单独放在一个类中,该类需要实现java.io.Serializable接口并重写equals和hascode,再将该类注解为@Embeddable,最后在主类中(该类不包含联合主键类中的字段)保存该联合主键类的一个引用,并...

    spring4.0 API

    java.util.HashMap,V> (implements java.lang.Cloneable, java.util.Map,V>, java.io.Serializable) java.util.LinkedHashMap,V> (implements java.util.Map,V>) org.springframework.core.annotation....

    Java高级程序设计实战教程第五章-Java序列化机制.pptx

    其中包括以下接口和类: java.io.Serializable java.io.Externalizable ObjectOutput ObjectInput ObjectOutputStream ObjectInputStream Java高级程序设计实战教程第五章-Java序列化机制全文共15页,当前为第7页。...

    aesjava源码-THIS-.-IS-GREAT-:////IntelliJIDEA从.class文件重新创建的源代码//(由Fernflo

    导入java.io.Serializable; 导入java.security.AccessController; 导入java.security.AuthProvider; 导入java.security.InvalidParameterException; 导入java.security.Key; 导入java.security....

    Java远程控制源代码

    import java.io.Serializable; public class Message implements Serializable { private static final long serialVersionUID = 1L; private String fileName; // 文件名称 private long fileLength; // ...

    基于JAVA的学籍管理系统

    public class Student implements java.io.Serializable { String number,name,discipling,grade,borth,sex; public Student() { } public void setNumber(String number) { this.number=number; } public ...

    http依赖jar包.zip

    import java.io.Serializable; import java.util.HashMap; import java.util.Map; import com.google.gson.JsonObject; import com.google.gson.JsonArray; import net.sf.json.JSONObject; import org.apache....

    Android 通过Intent使用Bundle传递对象详细介绍

    被传递的对象需要先实现序列化,而序列化对象有两种方式:java.io.Serializable和android.os.Parcelable Java中使用的是Serializable,而谷歌在Android使用了自定义的Parcelable。 两种序列化方式的区别: 1.在...

    java-Hadoop序列化

     Java序列化(java.io.Serializable)  Hadoop序列化的特点  Hadoop的序列化格式:Writable  序列化格式特点:  紧凑:高效使用存储空间。  快速:读写数据的额外开销小  可扩展:可透明地读取老格式...

    NC总帐API帮助文档

    java.io.Serializable, java.lang.Cloneable, java.util.EventListener, nc.vo.gl.vouchervaluechange.ValueChangeListener, nc.vo.glpub.IVoAccess -----------------------------------------------------------...

    JAVA核心知识点整理(有效)

    25 JAVA8 与元数据.................................................................................................................................25 2.4. 垃圾回收与算法 .................................

    Java+SQL学籍管理系统

    其中一共包含6个页面,分别是: Delete.java Inquest.java ... /** * * @author Administrator */ public class Student implements java.io.Serializable { String number,name,discipling,grade,borth,sex;

    Java 2平台安全技术-结构,API设计和实现

    3.6.12 java.io .Serializable Permission 39 3.6.13 java.security.Security Permission 39 3.6.14 java.security.AllPermission 40 3.6.15 许可权隐含中的隐含 40 3.7 分配许可权 41 3.8 Protection Domain 42 ...

    JAVA 2平台安全技术-结构,API设计和实现

    3.6.12 java.io .Serializable Permission 39 3.6.13 java.security.Security Permission 39 3.6.14 java.security.AllPermission 40 3.6.15 许可权隐含中的隐含 40 3.7 分配许可权 41 3.8 Protection Domain 42 ...

    JAVA高级程序设计测试题含答案.docx

    示例 第2题 【单选题】【2.00分】【概念理解】 java.io包的File类是 [单选题] * A. 字符流类 B. 字节流类 C. 对象流类 D. 非流类(正确答案) E. 示例 JAVA高级程序设计测试题含答案全文共43页,当前为第1页。第3题 ...

    Java IO.pdf

    Java IO 一、概览 Java 的 I/O 大概可以分成以下几类: 磁盘操作:File 字节操作:InputStream 和 OutputStream 字符操作:Reader 和 Writer 对象操作:Serializable 网络操作:Socket 新的输入/输出:NIO

Global site tag (gtag.js) - Google Analytics