欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java中的對象流總結(jié)(必看篇)

 更新時間:2017年04月30日 12:59:48   投稿:jingxian  
下面小編就為大家?guī)硪黄狫ava中的對象流總結(jié)(必看篇)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

Java中可以通過對象流將一個序列化的對象保存到硬盤中,或者硬盤中讀取一個對象。對象流的存儲和讀取包含以下幾點內(nèi)容:

1、所保存的對象必須實現(xiàn)Serializable接口。

2、 所保存的對象的屬性也必須實現(xiàn)Serializable接口。

3、 最好要給該對象提供一個版本號,private static final long serialVersionId。

下面是一個對象流存儲和讀取一個對象的流程圖:

class Person implements Serializable {
 //實現(xiàn)序列化接口,其中的String,int也都是實現(xiàn)了Serializable的,不然就會報錯
  private static final long serialVersionUID = 7072662597320618920L;
  String name;
  int age;

  public Person(String name, int age) {
    this.name = name;
    this.age = age;
  }

  @Override
  public String toString() {
    return "Person [name=" + name + ", age=" + age + "]";
  }
}

public class ObjectStreamTest {
  private ObjectInputStream ips;

  @Test
  public void outStreamTest() throws Exception {
    File file = new File("D:/person.txt");
    Person p1 = new Person("hanking", 24);
    Person p2 = new Person("Hust", 120);
    FileOutputStream fos = new FileOutputStream(file);
    ObjectOutputStream ops = new ObjectOutputStream(fos);
    ops.writeObject(p2);
    ops.writeObject(p1);
    ops.flush();
    ops.close();
  }

  @Test
  public void InStreamTest() throws Exception {
    ips = new ObjectInputStream(new FileInputStream("D:/person.txt"));
    Person p1 = (Person) ips.readObject();
    System.out.println(":" + p1);
    Person p2 = (Person) ips.readObject();
    System.out.println(":" + p2);
    ips.close();
  }
}

以上這篇Java中的對象流總結(jié)(必看篇)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java8如何使用Lambda表達式簡化代碼詳解

    Java8如何使用Lambda表達式簡化代碼詳解

    這篇文章主要給大家介紹了關(guān)于Java8如何使用Lambda表達式簡化的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • 基于java SSM springboot實現(xiàn)景區(qū)行李寄存管理系統(tǒng)

    基于java SSM springboot實現(xiàn)景區(qū)行李寄存管理系統(tǒng)

    這篇文章主要介紹了基于java SSM springboot實現(xiàn)的景區(qū)行李寄存管理系統(tǒng),本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08
  • JDK更換IDEA如何修改圖文詳解

    JDK更換IDEA如何修改圖文詳解

    這篇文章主要給大家介紹了關(guān)于JDK更換IDEA如何修改的相關(guān)資料,Java的不同版本的JDK之間存在細微的差別,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-07-07
  • SpringSceurity實現(xiàn)短信驗證碼功能的示例代碼

    SpringSceurity實現(xiàn)短信驗證碼功能的示例代碼

    這篇文章主要介紹了SpringSceurity實現(xiàn)短信驗證碼功能的示例代碼,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • Java實現(xiàn)二叉樹的示例代碼(遞歸&迭代)

    Java實現(xiàn)二叉樹的示例代碼(遞歸&迭代)

    二叉樹(Binary?tree)是樹形結(jié)構(gòu)的一個重要類型。本文將利用Java語言實現(xiàn)二叉樹,文中的示例代碼講解詳細,需要的同學(xué)可以參考一下
    2022-03-03
  • java基于控制臺的學(xué)生學(xué)籍管理系統(tǒng)

    java基于控制臺的學(xué)生學(xué)籍管理系統(tǒng)

    這篇文章主要為大家詳細介紹了java基于控制臺的學(xué)生學(xué)籍管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • Java基礎(chǔ)學(xué)習(xí)之接口詳解

    Java基礎(chǔ)學(xué)習(xí)之接口詳解

    接口,是Java語言中一種引用類型,是方法的集合,如果說類的內(nèi)部封裝了成員變量、構(gòu)造方法和成員方法,那么接口的內(nèi)部主要就是封裝了方法。本文通過一些示例詳細為大家展示了接口的使用,需要的可以參考一下
    2022-10-10
  • 最流行的java后臺框架spring quartz定時任務(wù)

    最流行的java后臺框架spring quartz定時任務(wù)

    近日項目開發(fā)中需要執(zhí)行一些定時任務(wù),比如需要在每天凌晨時候,分析一次前一天的日志信息,借此機會整理了一下定時任務(wù)的幾種實現(xiàn)方式,由于項目采用spring框架,所以我都將結(jié)合spring框架來介紹
    2015-12-12
  • Java和C++通過new創(chuàng)建的對象有何區(qū)別?

    Java和C++通過new創(chuàng)建的對象有何區(qū)別?

    Java和C++都是面向?qū)ο蟮木幊陶Z言,然而Java和C++在創(chuàng)建對象時卻存在不同的方式,由于方式的不同導(dǎo)致在內(nèi)存中管理的不同。這篇文章主要給大家介紹了關(guān)于Java和C++通過new創(chuàng)建對象區(qū)別的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-11-11
  • SpringBoot整合MyBatisPlus詳解

    SpringBoot整合MyBatisPlus詳解

    這篇文章詳細介紹了SpringBoot整合mybatisplus的全過程,文中有詳細的代碼示例,具有一定的參考價值,需要的朋友可以參考一下
    2023-04-04

最新評論