易截截图软件、单文件、免安装、纯绿色、仅160KB

java序列化(Serializable)的作用和反序列化

这里转载一篇讲解java序列化(Serializable)和反序列化方面的感觉很好的文章。
1、序列化是干什么的?
简单说就是为了保存在内存中的各种对象的状态(也就是实例变量,不是方法),并且可以把保存的对象状态再读出来。虽然你可以用你自己的各种各样的方法来保 存object states,但是Java给你提供一种应该比你自己好的保存对象状态的机制,那就是序列化。
2、什么情况下需要序列化
a)当你想把的内存中的对象状态保存到一个文件中或者数据库中时候;
b)当你想用套接字在网络上传送对象的时候;
c)当你想通过RMI传输对象的时候;
3、当对一个对象实现序列化时,究竟发生了什么?
在没有序列化前,每个保存在堆(Heap)中的对象都有相应的状态(state),即实例变量(instance ariable)比如:
java 代码
Foo  myFoo = new Foo();
myFoo .setWidth(37);
myFoo.setHeight(70);
当 通过下面的代码序列化之后,MyFoo对象中的width和Height实例变量的值(37,70)都被保存到foo.ser文件中,这样以后又可以把它 从文件中读出来,重新在堆中创建原来的对象。当然保存时候不仅仅是保存对象的实例变量的值,JVM还要保存一些小量信息,比如类的类型等以便恢复原来的对 象。
java 代码
FileOutputStream fs = new FileOutputStream("foo.ser");
ObjectOutputStream os = new ObjectOutputStream(fs);
os.writeObject(myFoo);
4、实现序列化(保存到一个文件)的步骤
a、Make a FileOutputStream
java 代码
FileOutputStream fs = new FileOutputStream(“foo.ser”);
b、Make a ObjectOutputStream
java 代码
ObjectOutputStream os =  new ObjectOutputStream(fs);
c、write the object
java 代码
os.writeObject(myObject1);
os.writeObject(myObject2);
os.writeObject(myObject3);
d、 close the ObjectOutputStream
java 代码
os.close();
5、举例说明
Java代码
package com.hotye.dchaoxiong.serializabletest;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
public class Box implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
private int width;
private int height;
private String&


相关文档:

纯java PHP引擎——Quercus

由于公司项目的需要,最经在研究Quercus一个纯java的php引擎。项目这两个需要做的就是将该引擎裁剪,做一个相对安全的版本,提供给ISV使用,同时,在引擎中提供默认的接口供调用。所以先研究了一下,在Quercus引擎的支持下,PHP如何与java集成。
以下是学习到的几点:
1、如果使用 Resin-IoC/WebBeans来组织应用的服 ......

JAVA字符串处理函数列表一览

Java中的字符串也是一连串的字符。但是与许多其他的计算机语言将字符串作为字符数组处理不同,Java将字符串作为String类型对象来处理。将字符串作为内置的对象处理允许Java提供十分丰富的功能特性以方便处理字符串。下面是一些使用频率比较高的函数及其相关说明。
substring()
它有两种形式,第一种是:String substring( ......

java 培训

华杰教育是新乡最专业的软件实训基地,思科网络工程师考试中心、 JAVA、.NET、php软件培训中心、计算机等级考试培训中心  是豫北地区最大的IT软件教育机构!
软件实训:
         课程分为.net和java两个方向,有实训早餐和短期软件培训,
《实训早餐》项目:针对计算机及 ......

Java命令行工具总结

Java
命令行工具总结

1、命令
C\Documents and Settings\Zianed>ls ‘%JAVA_HOME%’/bin
HtmlConverter.exe  javap.exe       jstatd.exe        rmid.exe
appletviewer.exe   javaw.exe    &n ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号