`

ArrayList实现了序列化的应用

阅读更多
   凡是需要被序列化的对象,均需要 直接或间接地 实现java.io.Serializable接口;
并且,该对象所持有的其他对象也需要 直接或间接地 实现java.io.Serializable接口;
否则将引起异常或不能正确地反序列化。

ArrayList也实现了序列化

public static void main(String[] args) {
		// TODO Auto-generated method stub

		File f=new File("d:\\user.tmp");

	       if(f.exists()){

	           f.delete();

	       }

	       ArrayList al=new ArrayList();
	       al.add(new classFirstload())//没有实现Serialable的类会报异常!
	       FileOutputStream os;
		try {
			os = new FileOutputStream(f);
			ObjectOutputStream oos=new ObjectOutputStream(os);

		    oos.writeObject(al);

		    oos.close();

		    FileInputStream fi=new FileInputStream(f);
		    ObjectInputStream ois=new ObjectInputStream(fi);
		    ArrayList arraydemo=(ArrayList)ois.readObject();
		    System.out.println(arraydemo.get(0));
		    os.close();
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

	       //ObjectOutputStream 核心类

	       

	    

	}
分享到:
评论

相关推荐

    深入分析Java的序列化与反序列化

     ArrayList对序列化的实现有什么好处  Java对象的序列化  Java平台允许我们在内存中创建可复用的Java对象,但一般情况下,只有当JVM处于运行时,这些对象才可能存在,即,这些对象的生命周期不会比

    ArrayList、Vector、LinkedList 的区别.docx

    同时,三个类都实现了 Cloneable 接口,支持调用 Object.clone 方法返回该对象的浅拷贝,和 java.io.Serializable 接口,支持序列化和反序列化。 在底层数据结构方面,ArrayList 和 Vector 都使用数组结构来存储...

    理解Java的序列化与反序列化

    主要为大家详细介绍了Java的序列化与反序列化,序列化是一种对象持久化的手段。普遍应用在网络传输、RMI等场景中。本文通过分析ArrayList的序列化来介绍Java序列化的相关内容,感兴趣的小伙伴们可以参考一下

    C#学习笔记_20100614

    学习过程中的体会,包括: C#中关键字的小提示 如何产生随机数 ...序列化对象到文件 创建一个文本文件并写入文本 文件夹拷贝 使用C#解析简单XML 读 XML文件 用 XmlWriter写 XML文件 插入数据到 XML文档

    Java性能调优实战——覆盖80%以上的Java应用调优场景

    开篇词讲怎样才能做好性能调优02讲如何制定性能调优策略04讲慎重使用正则表达式05讲ArrayList还是LinkedList使用不当性能差千倍07讲深入浅出HashMap的设计与优化08讲网络通信优化之IO模型:如何解决高并发下IO瓶颈09...

    net学习笔记及其他代码应用

    答:Class可以被实例化,属于引用类型,是分配在内存的堆上的,Struct属于值类型,是分配在内存的栈上的. [Page] 26.根据委托(delegate)的知识,请完成以下用户控件中代码片段的填写: namespace test { public ...

    超级有影响力霸气的Java面试题大全文档

     对于客户机,EntityBean是一种持久性对象,它代表一个存储在持久性存储器中的实体的对象视图,或是一个由现有企业应用程序实现的实体。  Session Bean 还可以再细分为 Stateful Session Bean 与 Stateless ...

    java jdk实列宝典 光盘源代码

    序列化和反序列化对象(将不长用的对象暂时持久化到文件中为对象的序列化,反之用时再把对象恢复到内存为反序列化); 控制对象的序列化和反序列化; 读jar包的资源文件;用zip格式压缩 和解压文件;操作Excel文件;...

    asp.net知识库

    泛型的序列化问题 .NET 2.0 泛型在实际开发中的一次小应用 C#2.0 Singleton 的实现 .Net Framwork 强类型设计实践 通过反射调用類的方法,屬性,字段,索引器(2種方法) ASP.NET: State Server Gems 完整的动态加载/卸载...

    java面试题,180多页,绝对良心制作,欢迎点评,涵盖各种知识点,排版优美,阅读舒心

    如何实现Java序列化与反序列化 28 【基础】String s = new String("xyz");创建了几个字符串对象 30 【基础】接口是否可继承(extends)接口?抽象类是否可实现(implements)接口?抽象类是否可继承具体类(concrete...

    java面试题

    65. 什么是java序列化,如何实现java序列化? 48 65.1. java序列化、反序列化 48 65.2. 对象的序列化主要有两种用途: 48 65.3. 对象序列化包括如下步骤: 49 65.4. 对象反序列化的步骤如下: 49 66. 反射机制 49 ...

    数据结构与算法分析Java语言描述(第二版)

    remove方法对LinkedList类的使用3.3.5 关于ListIterator接口3.4 ArrayList类的实现3.4.1 基本类3.4.2 迭代器、Java嵌套类和内部类3.5 LinkedList类的实现3.6 栈ADT3.6.1 栈模型3.6.2 栈的实现3.6.3 应用3.7 队列...

    千方百计笔试题大全

    76、什么是java序列化,如何实现java序列化? 18 77、简述synchronized和java.util.concurrent.locks.Lock的异同 ? 18 78、abstract class Name { private String name; public abstract boolean isStupidName...

    java面试宝典

    76、什么是java序列化,如何实现java序列化? 18 77、简述synchronized和java.util.concurrent.locks.Lock的异同 ? 18 78、abstract class Name { private String name; public abstract boolean isStupidName...

    数据结构与算法分析-Java语言描述(第2版)_2_2

    3.6.3 应用 3.7 队列adt 3.7.1 队列模型 3.7.2 队列的数组实现 3.7.3 队列的应用 小结 练习第4章 树 4.1 预备知识 4.1.1 树的实现 4.1.2 树的遍历及应用 4.2 二叉树 4.2.1 实现 4.2.2 例子...

    数据结构与算法分析-Java语言描述(第2版)_1_2

    3.6.3 应用 3.7 队列adt 3.7.1 队列模型 3.7.2 队列的数组实现 3.7.3 队列的应用 小结 练习第4章 树 4.1 预备知识 4.1.1 树的实现 4.1.2 树的遍历及应用 4.2 二叉树 4.2.1 实现 4.2.2 例子...

    java基础案例与开发详解案例源码全

    13.9.1 序列化和反序列化操作345 13.9.2 序列化的版本347 13.1 0随机存取文件流348 13.1 1ZIP文件流350 13.1 2本章练习352 第14章 14.1 抽象窗口工具集(AWT)354 14.1.1 AWT组件和容器354 14.1.2 布局管理器359 14.2 ...

    史上最全java面试,103项重点知识,带目录

    58. 什么是 java 序列化?什么情况下需要序列化? 23 59. 动态代理是什么?有哪些应用? 23 60. 怎么实现动态代理? 24 五、对象拷贝 24 61. 为什么要使用克隆? 24 62. 如何实现对象克隆? 24 63. 深拷贝和浅拷贝...

Global site tag (gtag.js) - Google Analytics