实现serializable接口的类是可以被序列化的,java中serializable接口的作用
我们在学习JavaSE的时候,学习了ObjectInputStream和ObjectOutputStream。当时我们认为,只要一个对象要写入文件,就必须实现Serializable接口。其实这个理解没有问题。
一、问题介绍
Java为什么要实现序列化接口?我们来看下图:
如何解决写爬虫IP受阻的问题?立即使用。
Java程序需要将一个数据写入磁盘。如果这个数据是一个普通的字符串,是没有问题的。所有机器都能正常识别字符串。即使需要转换成相应的字节,计算机也知道如何将字符串转换成相应的字节(码表)。但如果是Java对象,就麻烦了。磁盘不知道你正在传递一个Java对象。换句话说,磁盘不知道用什么格式把Java对象转换成相应的字节。
相关视频教程分享:java学习
我们知道Java对象本质上是一个类字节码,磁盘不知道如何将这个字节码写入磁盘,所以我们需要识别它,告诉磁盘:“我是Java对象,你应该这样写入磁盘”,只需这样写入磁盘即可。因此,实现可序列化接口只是识别‘我是Java对象’
如果你理解了上面的话,就不难理解下图了:
第二,加深理解
Java为对象序列化提供了一种机制。一个对象可以用一个字节序列来表示,它包含对象的数据、对象的类型和存储在对象中的属性。在一个字节序列被写出到一个文件后,它相当于一个对象的信息在文件中的持久存储。
相反,可以从文件中读回字节序列,重建对象并反序列化它。对象的数据、对象的类型和存储在对象中的数据信息都可以用来在内存中创建对象。了解图片序列化:
相关文章教程推荐:java入门程序以上是为什么要用java实现可序列化序列化接口的详细内容。请多关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。