日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

对象序列化

發(fā)布時(shí)間:2025/7/14 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 对象序列化 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

對(duì)象序列化就是把一個(gè)對(duì)象變?yōu)槎M(jìn)制的數(shù)據(jù)流的一種方法

通過對(duì)象序列化可以方便地實(shí)現(xiàn)對(duì)象的傳輸或存儲(chǔ)

?

如果一個(gè)類的對(duì)象想被序列化,則對(duì)象所在的類必須實(shí)現(xiàn)java.io.Serializable接口

//類名:Person_3 //屬性: //方法: class Person_3 implements Serializable{ //此類的對(duì)象可以被序列化private String name;private int age;public Person_3(String name, int age) {super();this.name = name;this.age = age;}@Overridepublic String toString() {return "姓名:" + name + ", 年齡:" + age;}}

?此類的對(duì)象是可以經(jīng)過二進(jìn)制數(shù)據(jù)流進(jìn)行傳輸?shù)?/p>

如果要完成對(duì)象的輸入或者輸出,還必須依靠對(duì)象輸出流(ObjectOutputStream)對(duì)象輸入流(ObjectInputStream).

使用對(duì)象輸出流輸出序列化對(duì)象的步驟有時(shí)也稱為序列化

而使用對(duì)象輸入流讀入對(duì)象的過程有時(shí)也稱為反序列化

?

<1>對(duì)象輸出流ObjectOutputStream

import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.ObjectOutputStream; import java.io.OutputStream; import java.io.Serializable;//================================================= // File Name : Serializable_demo //------------------------------------------------------------------------------ // Author : Common//類名:Person_3 //屬性: //方法: class Person_3 implements Serializable{ //此類的對(duì)象可以被序列化private String name;private int age;public Person_3(String name, int age) {super();this.name = name;this.age = age;}@Overridepublic String toString() {return "姓名:" + name + ", 年齡:" + age;}}//主類 //Function : Serializable_demo; public class Serializable_demo {public static void main(String[] args) throws Exception {// TODO 自動(dòng)生成的方法存根File f = new File("/home/common/software/coding/HelloWord/HelloWord/test.txt");//路徑ObjectOutputStream oos = null;OutputStream out = new FileOutputStream(f); //文件輸出流oos = new ObjectOutputStream(out); //為對(duì)象輸出流實(shí)例化oos.writeObject(new Person_3("張三", 30));oos.close();}}

?

<2>對(duì)象輸出流ObjectInputStream

import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.InputStream; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.io.OutputStream; import java.io.Serializable;//================================================= // File Name : Serializable_demo //------------------------------------------------------------------------------ // Author : Common//類名:Person_3 //屬性: //方法: class Person_3 implements Serializable{ //此類的對(duì)象可以被序列化private String name;private int age;public Person_3(String name, int age) {super();this.name = name;this.age = age;}@Overridepublic String toString() {return "姓名:" + name + ", 年齡:" + age;}}//主類 //Function : Serializable_demo; public class Serializable_demo {public static void main(String[] args) throws Exception {// TODO 自動(dòng)生成的方法存根File f = new File("/home/common/software/coding/HelloWord/HelloWord/test.txt");//路徑ObjectInputStream ois = null;InputStream input = new FileInputStream(f); //文件輸入流ois = new ObjectInputStream(input); //為對(duì)象輸入流實(shí)例化Object obj = ois.readObject(); //讀取對(duì)象ois.close();System.out.println(obj);}}

?

總結(jié)

以上是生活随笔為你收集整理的对象序列化的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。