当前位置: 首页 > news >正文

做网站跟赚钱嘛长沙网站备案

做网站跟赚钱嘛,长沙网站备案,有专门做网站维护的职业吗,聊城职业 网站建设与管理什么是序列化和反序列化#xff1f; 什么是序列化和反序列化#xff1f; 序列化和反序列化是计算机科学中两个重要的概念#xff0c;主要应用在数据存储和网络传输等场景。序列化是将数据结构或对象状态转换为可以存储或传输的形式的过程。这种形式要求在重新构建原始对象…什么是序列化和反序列化 什么是序列化和反序列化 序列化和反序列化是计算机科学中两个重要的概念主要应用在数据存储和网络传输等场景。序列化是将数据结构或对象状态转换为可以存储或传输的形式的过程。这种形式要求在重新构建原始对象时能够在其他环境或在程序运行的后续时间点使用。这个过程主要通过将对象的数据转化为字节流来实现也可以将其转化为格式如 XML 或 JSON 的数据以便在网络上进行传输或在磁盘上进行存储。举个例子假设你有一个复杂的数据结构如一个包含多个字段和数组的对象。你不能直接将这个对象写入文件或通过网络发送。因此你需要先将其转换为可以写入或发送的格式这就是序列化。反序列化是序列化的逆过程也就是从一系列字节中提取出数据结构。在接收到序列化的数据如从文件或网络后通过反序列化可以将数据恢复为原始的对象或数据结构从而可以在程序中使用。以上述的例子反序列化就是读取该文件或接收到的数据并根据序列化时的格式将其恢复为原始的对象。这两个过程在很多编程语言中都有内置的支持例如在 Java 中你可以使用 java.io.Serializable 接口来对对象进行序列化和反序列化在 Python 中你可以使用 pickle 模块进行序列化和反序列化在 JavaScript 中你可以使用 JSON 的 stringify 和 parse 方法进行序列化和反序列化等。 在java中实现序列化和反序列化为什么要实现Serializable接口 Serializable 接口是一种标记接口本身并没有定义任何方法但是它向 JVM 提供了一个指示表明实现该接口的类可以被序列化和反序列化。这意味着你可以将该类的对象转换为字节流序列化然后再将这个字节流转回为对象反序列化。序列化的过程是 JVM 通过反射来完成的它会查看对象的类是否实现了 Serializable 接口。如果没有实现将会抛出一个 NotSerializableException 异常。实现 Serializable 接口的主要原因如下 允许 JVM 序列化对象如上所述JVM 只会序列化实现 Serializable 接口的对象。表示类的实例可以被安全地序列化实现 Serializable 接口的类表示它满足 JVM 对于序列化的要求。这不仅仅是类的实例可以被转换为字节流还包括这个类的实例可以被反序列化而且反序列化后的对象保持了原始对象的状态。允许类的实例在 JVM 之间进行传输序列化的一个重要应用是在网络应用或分布式系统中允许对象在 JVM 之间进行传输。只有实现 Serializable 接口的对象才能通过网络进行传输。持久化序列化也被用于将对象的状态持久化即将对象存储在数据库、文件或内存中然后在需要的时候再进行恢复。实现 Serializable 接口的对象可以被持久化。 综上实现 Serializable 接口是为了使对象可以被序列化和反序列化以便在不同的环境或时间点恢复对象的状态或在 JVM 之间传输对象或将对象的状态持久化。 案例 当然可以。下面这个简单的例子中我们将创建一个实现了 Serializable 接口的类 Person然后进行序列化和反序列化 首先我们创建一个实现了 Serializable 接口的 Person 类 import java.io.Serializable;public class Person implements Serializable {private static final long serialVersionUID 1L;private String name;private int age;public Person(String name, int age) {this.name name;this.age age;}public String getName() {return name;}public int getAge() {return age;}Overridepublic String toString() {return Person{ name name \ , age age };} }接下来我们创建一个序列化这个 Person 对象的类 SerializeDemo import java.io.FileOutputStream; import java.io.ObjectOutputStream;public class SerializeDemo {public static void main(String[] args) {Person p1 new Person(John Doe, 30);try {FileOutputStream fileOut new FileOutputStream(/tmp/person.ser);ObjectOutputStream out new ObjectOutputStream(fileOut);out.writeObject(p1);out.close();fileOut.close();System.out.println(Serialized data is saved in /tmp/person.ser);} catch (Exception e) {e.printStackTrace();}} }现在我们来反序列化这个 Person 对象创建一个类 DeserializeDemo import java.io.FileInputStream; import java.io.ObjectInputStream;public class DeserializeDemo {public static void main(String[] args) {Person p null;try {FileInputStream fileIn new FileInputStream(/tmp/person.ser);ObjectInputStream in new ObjectInputStream(fileIn);p (Person) in.readObject();in.close();fileIn.close();} catch (Exception e) {e.printStackTrace();}System.out.println(Deserialized Person...);System.out.println(Name: p.getName());System.out.println(Age: p.getAge());} }以上就是一个完整的 Java 序列化和反序列化的例子。首先我们创建了一个 Person 对象并序列化到一个文件中然后我们从这个文件中读取数据并反序列化回 Person 对象。
http://www.sadfv.cn/news/179851/

相关文章:

  • 双语言网站模版深圳建设管理中心网站
  • 找人做网站做的很烂南京传销是以网站开发
  • php 网站开发 视频哪里搜索引擎优化好
  • 北京建设信源官方网站网站建站中关键字搜索怎么弄
  • 惠州网站建设哪里有北京网站推广服务
  • 中文域名是网站名称吗wordpress做视频播放网站
  • 淘宝店网站论坛怎么做在哪里能找到做网站的人
  • 南通网站建设祥云建设银行360网站登录不了
  • 手机网站首页布局设计网页设计的毕业设计
  • 盐城网站设计凡科邮箱登录入口
  • wordpress用户自建百度关键词seo年度费用
  • 创建网站费用网站前端如何做兼职
  • 固始网站建设网站推广需要多少钱易下拉系统
  • 杭州网站建设开发陕西省高速建设集团公司网站
  • 淘金网站建设推广yp77731域名查询
  • jquery 做网站一个网站3个相似域名
  • 网站开发的目的意义建设国家标准官方网站
  • 西宁网站建设开发宁波网站建设价格合理
  • php手机网站开发教程网站网站开发的公司
  • 你知道吗 网站辽宁建设工程信息网备案
  • 动易官方网站济南企业建设网站
  • html5旅游网站seo公司上海牛巨微
  • 织梦做的网站别人提交给我留的言我去哪里看国内新闻最新官方消息
  • 比较好的建立站点企业网站优化兴田德润
  • 手机制作钓鱼网站兰州网站建设和推广
  • 网站广告如何做网络优化器免费
  • 连锁店网站建设mysql导入wordpress
  • 房产网站建设接单网站上做旅游卖家要学什么软件
  • 企业网站备案要多少钱莱芜网络公司平台
  • 做餐饮要看的网站宜春的网站建设公司