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

如何做网站推广上海自助建站

如何做网站推广,上海自助建站,react做的电商网站能上线吗,抖音企业服务平台JAVA序列化和反序列化 文章目录 JAVA序列化和反序列化序列化什么是序列化?为什么要进行序列化?如何将对线进行序列化具体实现过程 完整代码 序列化 什么是序列化? 就是将对象转化为字节的过程 为什么要进行序列化? 让数据更高效的传输让数据更好的…

JAVA序列化和反序列化

文章目录

  • JAVA序列化和反序列化
    • 序列化
      • 什么是序列化?
      • 为什么要进行序列化?
      • 如何将对线进行序列化
      • 具体实现过程
    • 完整代码

序列化

什么是序列化?

就是将对象转化为字节的过程

为什么要进行序列化?

  1. 让数据更高效的传输
  2. 让数据更好的被存储

如何将对线进行序列化

对象要想进行序列化必须满足两个条件:

  1. 该类必须实现 java.io.Serializable 接口
  2. 该类的所有属性必须是可序列化的

具体实现过程

通过implements实现序列化接口:

import java.io.Serializable;public class student implements Serializable {public String name;public int course;public int age;public void behavior(){System.out.println("I am student");}
}

这样就允许该对象类被序列化,重写序列化函数

// 导入java.io.*包,这个包包含了Java IO的所有类和接口,提供了全面的输入/输出接口支持。  
import java.io.*;// 定义一个名为Serialization_And_Unserialization的公共类。这个类将演示如何实现对象的序列化和反序列化。  
public class Serialization_And_Unserialization {// 定义一个公共方法Serialize,它接受一个Object类型的对象和一个File类型的文件名作为参数。这个方法将对象序列化并写入到指定的文件中。  public void Serialize(Object obj,File filename) throws IOException {// 创建一个FileOutputStream对象,它将创建一个新的文件输出流,允许将字节写入到指定的文件中。  FileOutputStream FO = new FileOutputStream(filename);  //新建一个文件输出流 将字节写入文件的输出流  // 创建一个ObjectOutputStream对象,它将创建一个新的对象输出流,用于将对象序列化并写入到之前创建的文件输出流中。  ObjectOutputStream OOS = new ObjectOutputStream(FO);// 使用ObjectOutputStream的writeObject方法将对象序列化并写入到文件输出流中。  OOS.writeObject(obj);}
}

使用我们上篇java基础文字写好的对象来进行测试

import java.io.File; // 导入文件类,用于创建文件对象  
import java.io.IOException; // 导入IOException类,处理IO操作可能出现的异常  public class Xl { // 定义一个名为Xl的公共类  public static void main(String[] args) throws IOException, ClassNotFoundException { // 主方法,程序入口  student stu2 =new student(); // 创建一个名为stu2的学生对象  Serialization_And_Unserialization s =new Serialization_And_Unserialization(); // 创建一个Serialization_And_Unserialization对象,用于进行对象的序列化和反序列化操作  s.Serialize(stu2, new File("stu2.txt")); // 使用Serialize方法将stu2对象序列化并保存到名为stu2.txt的文件中  }
}

我们可以看到文件已经生成了
在这里插入图片描述
接下来再写一个方法将它进行反序列化

 public Object Unserialize(String filename) throws IOException, ClassNotFoundException {// 创建一个FileInputStream对象,它将创建一个新的文件输入流,允许从指定的文件中读取字节。FileInputStream FI = new FileInputStream(filename);// 创建一个ObjectInputStream对象,它将创建一个新的对象输入流,用于从之前创建的文件输入流中读取并反序列化对象。ObjectInputStream OIS =  new  ObjectInputStream(FI);// 使用ObjectInputStream的readObject方法从文件输入流中读取并反序列化对象,然后返回这个对象。return  OIS.readObject();}

我们进行调用

    Object stu3=s.Unserialize("stu2.txt"); // 使用Unserialize方法从名为stu2.txt的文件中读取并反序列化对象,然后将其赋给stu3变量System.out.println(stu3); // 打印stu3对象

在这里插入图片描述
看到已经准换回来了

完整代码

重写方法代码

// 导入java.io.*包,这个包包含了Java IO的所有类和接口,提供了全面的输入/输出接口支持。  
import java.io.*;// 定义一个名为Serialization_And_Unserialization的公共类。这个类将演示如何实现对象的序列化和反序列化。  
public class Serialization_And_Unserialization {// 定义一个公共方法Serialize,它接受一个Object类型的对象和一个File类型的文件名作为参数。这个方法将对象序列化并写入到指定的文件中。  public void Serialize(Object obj,File filename) throws IOException {// 创建一个FileOutputStream对象,它将创建一个新的文件输出流,允许将字节写入到指定的文件中。  FileOutputStream FO = new FileOutputStream(filename);  // 创建一个ObjectOutputStream对象,它将创建一个新的对象输出流,用于将对象序列化并写入到之前创建的文件输出流中。  ObjectOutputStream OOS = new ObjectOutputStream(FO);// 使用ObjectOutputStream的writeObject方法将对象序列化并写入到文件输出流中。  OOS.writeObject(obj);}// 定义一个公共方法Unserialize,它接受一个String类型的文件名作为参数。这个方法将从指定的文件中读取对象并将其反序列化。public Object Unserialize(String filename) throws IOException, ClassNotFoundException {// 创建一个FileInputStream对象,它将创建一个新的文件输入流,允许从指定的文件中读取字节。FileInputStream FI = new FileInputStream(filename);// 创建一个ObjectInputStream对象,它将创建一个新的对象输入流,用于从之前创建的文件输入流中读取并反序列化对象。ObjectInputStream OIS =  new  ObjectInputStream(FI);// 使用ObjectInputStream的readObject方法从文件输入流中读取并反序列化对象,然后返回这个对象。return  OIS.readObject();}
}

调用代码

import java.io.File; // 导入文件类,用于创建文件对象
import java.io.IOException; // 导入IOException类,处理IO操作可能出现的异常public class Xl { // 定义一个名为Xl的公共类public static void main(String[] args) throws IOException, ClassNotFoundException { // 主方法,程序入口student stu2 =new student(); // 创建一个名为stu2的学生对象Serialization_And_Unserialization s =new Serialization_And_Unserialization(); // 创建一个Serialization_And_Unserialization对象,用于进行对象的序列化和反序列化操作s.Serialize(stu2, new File("stu2.txt")); // 使用Serialize方法将stu2对象序列化并保存到名为stu2.txt的文件中Object stu3=s.Unserialize("stu2.txt"); // 使用Unserialize方法从名为stu2.txt的文件中读取并反序列化对象,然后将其赋给stu3变量System.out.println(stu3); // 打印stu3对象}
}
http://www.yayakq.cn/news/200764/

相关文章:

  • dede 网站名称动漫制作专业需要绘画基础吗
  • 什么网站可以做excel表格家居企业网站建设新闻
  • 大连建设网站公司logo免费设计在线生成免费下载
  • 专注高端品牌网站的设计网络推广公司服务内容
  • 定制版网站建设详细报价成都网站快速开发
  • 黑色网站欣赏查询网站收录命令
  • 刚刚建设的网站如何放图片wordpress伪静态教程
  • 不会写代码怎样做网站电子商务和网络营销的区别
  • 专业群建设网站温州设计集团网站建设
  • 平面设计官方网站微信盲盒小程序搭建
  • 园区网互联及网站建设项目页面设计的原则
  • 专做网页的网站备案个人网站
  • 中文手机网站设计案例市网站建设公司
  • 校园网站建设方案策划书大连中国建筑装饰网
  • 电子商务网站建设自建团队网站数据库太大搬家还原500错误
  • 天津网站搜索引擎优化做药品网站规划方案
  • 平台网站建设费用网站平台怎么做
  • 企业网站网址举例财务公司经营范围有哪些
  • 装修设计网站排名蓝色 宽屏 网站 模板下载
  • 网站内部代码优化怎么不用wordpress
  • 福州网站制作建设wordpress主题安装空白
  • 做图片带字的网站鞍山58同城找工作 招聘
  • 前程无忧做一年网站多钱如何自建设网站
  • 广州建网站公司宁波高端网站建设推广
  • 西安网站开发定制制作镇平县建设局网站
  • 四团网站建设搜索引擎营销主要方法包括
  • 网站死链如何修改现在还有企业要建网站吗
  • 网站开源是什么意思建设工程信息网一体化平台
  • 网站建设需要会什么软件网站浏览器兼容性问题吗
  • 网站优化招商网站设计步骤图片