您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

java中为什么要实现Serializable序列化接口

2024/3/17 8:40:30发布29次查看
我们在学习javase的时候学习过objectinputstream和objectoutputstream,当时是觉得只要一个对象要写入文件就必须要实现serializable接口。其实这样理解完全没有问题。
一、问题引入
java中为什么要实现序列化接口呢?我们来看下图:
java程序中要往磁盘中写入一个数据,这个数据如果是一个普通字符串,那么没有问题,所有机器都能正常识别字符串,即使需要转成对应的字节,计算机也知道怎么将字符串转成对应的字节(码表),但是如果是一个java对象那就麻烦了,磁盘并不知道你传递的是一个java对象,换句话说,磁盘不知道按照什么格式把java对象转换成对应的字节。
相关视频教程分享:java学习
我们知道java对象本质上是一个class字节码,磁盘并不知道怎么将这个字节码写入到磁盘中,按何种方式去写,所以需要标识一下,告诉磁盘:“我是个java对象,你要按这种方式写入到磁盘中”,只不过按这种方式写入到磁盘。因此实现serializable接口只是标识一下我是个java对象
如果你懂了上述文字的理解,也就不难懂下述图了:
二、加深理解
java 提供了一种对象序列化的机制。用一个字节序列可以表示一个对象,该字节序列包含该对象的数据、对象的类型和对象中存储的属性等信息。字节序列写出到文件之后,相当于文件中持久保存了一个对象的信息。
反之,该字节序列还可以从文件中读取回来,重构对象,对它进行反序列化。对象的数据、对象的类型和对象中存储的数据信息,都可以用来在内存中创建对象。看图理解序列化:
相关文章教程推荐:java入门程序
以上就是java中为什么要实现serializable序列化接口的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product