|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
先谈谈我对java的一些认识。我选择java,是因为他语法简单,功能强大,从web,到桌面,到嵌入式,无所不能。但当我进一步了解了java后,感叹,java原来也有许多缺点。
当两个历程在举行远程通讯时,相互能够发送各类范例的数据。不管是何品种型的数据,城市以二进制序列的情势在收集上传送。发送方必要把这个Java对象转换为字节序列,才干在收集上传送;吸收方则必要把字节序列再恢复为Java对象。
把Java对象转换为字节序列的历程称为对象的序列化。
把字节序列恢复为Java对象的历程称为对象的反序列化。
对象的序列化次要有两种用处:
1)把对象的字节序列永世地保留到硬盘上,一般寄存在一个文件中;
2)在收集上传送对象的字节序列。
一.JDK类库中的序列化API
java.io.ObjectOutputStream代表对象输入流,它的writeObject(Objectobj)办法可对参数指定的obj对象举行序列化,把失掉的字节序列写到一个方针输入流中。
java.io.ObjectInputStream代表对象输出流,它的readObject()办法从一个源输出流中读取字节序列,再把它们反序列化为一个对象,并将其前往。、
只要完成了Serializable和Externalizable接口的类的对象才干被序列化。Externalizable接口承继自Serializable接口,完成Externalizable接口的类完整由本身来把持序列化的举动,而仅完成Serializable接口的类能够接纳默许的序列化体例。
对象序列化包含以下步骤:
1)创立一个对象输入流,它能够包装一个其他范例的方针输入流,如文件输入流;
2)经由过程对象输入流的writeObject()办法写对象。
对象反序列化的步骤以下:
1)创立一个对象输出流,它能够包装一个其他范例的源输出流,如文件输出流;
2)经由过程对象输出流的readObject()办法读取对象。
<p>
C#跟java类似,但是在跨平台方面理论上可以跨平台,实际上应用不大,执行性能优于java,跟C++基本一致,但是启动速度还是慢.代码安全,但容易性能陷阱. |
|