程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> Java IO學習筆記(五)對象流

Java IO學習筆記(五)對象流

編輯:關於JAVA

Java IO學習筆記(五)對象流。本站提示廣大學習愛好者:(Java IO學習筆記(五)對象流)文章只能為提供參考,不一定能成為您想要的結果。以下是Java IO學習筆記(五)對象流正文


1、Object流:直接將Object寫入或讀出。 2、序列化:將Object直接轉化成字節流寫到硬盤或網絡上。 3、假如想把一個對象轉化成字節流,該對象的實體類必需得完成Serializable接口,Serializable接口是標志性接口,它並沒有任何辦法,只是用於標識該類可以被序列化。 4、transient關鍵字,用於修飾成員變量,表示該成員變量是通明的,與Serializable接口同用,表示序列化的時分不思索該成員變量。序列化時存的是該成員變量數據類型的默許值。 5、Externalizable接口是Serializable接口的子類,完成Serializable接口JDK會協助控制如何序列化的進程,而完成Externalizable接口就可以自己控制序列化的完成進程。  該接口有兩個辦法:readExternal(ObjectInput in);把對象經過ObjectInput 讀出去。                                   writeExternal(ObjectOutput out);把對象經過ObjectOutput 寫出去。  普通來說就讓JDK完成就好了,這個接口不常用。   練習小例子: package test.io.object; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.io.Serializable; public class ObjectStreamTest {  public static void main(String args[]){    FileOutputStream fos = null;    ObjectOutputStream oos = null;    FileInputStream fis = null;    ObjectInputStream ois = null;    try { fos = new FileOutputStream("E:/技術學習/java/test/Socket/objectTest.txt"); oos = new ObjectOutputStream(fos); Stu s = new Stu(); s.school = "dd"; oos.writeObject(s); fis = new FileInputStream("E:/技術學習/java/test/Socket/objectTest.txt"); ois = new ObjectInputStream(fis); Stu s2 = (Stu) ois.readObject(); System.out.print(s2.old + " " + s2.school + " " + s2.name + " " +s2.teacher);    } catch (ClassNotFoundException e) { e.printStackTrace();    } catch (IOException e) { e.printStackTrace();    }  } } class Stu implements Serializable{  private static final long serialVersionUID = 1L;  int old = 25;  String name = "bjh";  transient String teacher = "cj";  String school = "lgd"; } 運轉後果: 25 dd bjh null
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved