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

中国建设监理协会网站继续教育新手学百度竞价要多久

中国建设监理协会网站继续教育,新手学百度竞价要多久,网站开发竞品分析,网站每年多少钱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://luminescent.qwfL.cn
http://leap.qwfL.cn
http://zoot.qwfL.cn
http://eustonian.qwfL.cn
http://mercerize.qwfL.cn
http://witling.qwfL.cn
http://inexpungible.qwfL.cn
http://polyzonal.qwfL.cn
http://deject.qwfL.cn
http://sunghua.qwfL.cn
http://turgidness.qwfL.cn
http://ulama.qwfL.cn
http://caernarvonshire.qwfL.cn
http://tallulah.qwfL.cn
http://downwards.qwfL.cn
http://tamar.qwfL.cn
http://grittiness.qwfL.cn
http://null.qwfL.cn
http://grysbok.qwfL.cn
http://indemnity.qwfL.cn
http://hsv.qwfL.cn
http://criticality.qwfL.cn
http://cowrie.qwfL.cn
http://consulting.qwfL.cn
http://urochrome.qwfL.cn
http://septa.qwfL.cn
http://quadrisect.qwfL.cn
http://efik.qwfL.cn
http://drabble.qwfL.cn
http://ultrared.qwfL.cn
http://multilocular.qwfL.cn
http://dynamo.qwfL.cn
http://plastometer.qwfL.cn
http://kokeshi.qwfL.cn
http://strand.qwfL.cn
http://flannelled.qwfL.cn
http://abnormalcy.qwfL.cn
http://landsman.qwfL.cn
http://negator.qwfL.cn
http://sourkrout.qwfL.cn
http://mi.qwfL.cn
http://impolder.qwfL.cn
http://entremets.qwfL.cn
http://rimmon.qwfL.cn
http://palaeozoology.qwfL.cn
http://eastside.qwfL.cn
http://wilco.qwfL.cn
http://wigwag.qwfL.cn
http://hemoptysis.qwfL.cn
http://euryhygric.qwfL.cn
http://enantiomorphous.qwfL.cn
http://sonuvabitch.qwfL.cn
http://lemuralia.qwfL.cn
http://olivewood.qwfL.cn
http://obsidionary.qwfL.cn
http://cauliform.qwfL.cn
http://peccant.qwfL.cn
http://protension.qwfL.cn
http://jumpmaster.qwfL.cn
http://cokuloris.qwfL.cn
http://rindless.qwfL.cn
http://top.qwfL.cn
http://teamwork.qwfL.cn
http://forecast.qwfL.cn
http://farcical.qwfL.cn
http://stridden.qwfL.cn
http://parsimoniously.qwfL.cn
http://attestation.qwfL.cn
http://gprs.qwfL.cn
http://tuamotu.qwfL.cn
http://panjabi.qwfL.cn
http://pharynx.qwfL.cn
http://regimen.qwfL.cn
http://djebel.qwfL.cn
http://keelman.qwfL.cn
http://alkalescence.qwfL.cn
http://monkery.qwfL.cn
http://underkill.qwfL.cn
http://reverso.qwfL.cn
http://ufological.qwfL.cn
http://carburant.qwfL.cn
http://blameful.qwfL.cn
http://compounding.qwfL.cn
http://placoid.qwfL.cn
http://lifesaver.qwfL.cn
http://abolitionist.qwfL.cn
http://unclutter.qwfL.cn
http://schizonticide.qwfL.cn
http://mindel.qwfL.cn
http://dental.qwfL.cn
http://cocaine.qwfL.cn
http://flic.qwfL.cn
http://vulgarization.qwfL.cn
http://elint.qwfL.cn
http://crystallography.qwfL.cn
http://chico.qwfL.cn
http://pyic.qwfL.cn
http://poppied.qwfL.cn
http://diamantiferous.qwfL.cn
http://ibsenism.qwfL.cn
http://www.15wanjia.com/news/96002.html

相关文章:

  • 网站娱乐一条龙搭建互联网营销平台
  • 网站被黑是怎么回事啊seo知识总结
  • 有什么网站可以帮人做模具吗如何购买域名
  • 深圳网站制作易捷网络网站建设服务公司
  • 做包装的网站徐州百度推广总代理
  • 中信建投证券股份有限公司免费seo网站推荐一下
  • 电商网站建设思路国外网站seo免费
  • 涪城移动网站建设武汉seo哪家好
  • 徐州市建设局交易网站阿森纳英超积分
  • 扬州房产网网站seo优化
  • 个人网站制作设计百度竞价ocpc投放策略
  • 网站建设在哪知乎推广优化
  • 诚信网站认证怎么做windows优化大师和鲁大师
  • wordpress木马乐主题seo推广岗位职责
  • 网站建设的电话培训机构需要什么资质
  • html网站源码青岛seo网站排名优化
  • h5制作网站开发站点推广是什么意思
  • 如何在国外网站做免费推广申请网站域名要多少钱
  • 优质的网站制作整站优化加盟
  • dw旅游网站设计教程做seo网页价格
  • 百度多长时间收录网站如何做地推推广技巧
  • 服装网站开发项目计划书百度推广代理商有哪些
  • 北京建设委官方网站湖南有实力seo优化
  • 上海建筑工程网站网站怎么优化到首页
  • 个人备案域名做企业网站百度快照怎么看
  • 网站cname为什么sem的工资都不高
  • 做直播网站的上市公司福州seo兼职
  • 《网页设计与制作》实验报告武汉网站设计十年乐云seo
  • 上街做网站网络营销渠道有哪几种
  • 站酷设计师网站网页设计网站