Java.io.ObjectOutputStream.defaultWriteObject()方法實例
java.io.ObjectOutputStream.defaultWriteObject() 方法寫入當前類的非靜態和非瞬態字段寫入此流。這也許隻能稱為從類被序列化的writeObject方法。它會拋出NotActiveException如果它被調用。
聲明
以下是java.io.ObjectOutputStream.defaultWriteObject()方法的聲明
public void defaultWriteObject()
參數
-
NA
返回值
這個方法冇有返回值
異常
-
IOException -- 如果在寫入到底層OutputStream發生I / O錯誤
例子
下麵的示例演示java.io.ObjectOutputStream.defaultWriteObject()方法的用法。
package com.yiibai; import java.io.*; public class ObjectOutputStreamDemo { public static void main(String[] args) { int i = 319874; try { // create a new file with an ObjectOutputStream FileOutputStream out = new FileOutputStream("test.txt"); ObjectOutputStream oout = new ObjectOutputStream(out); // write something in the file oout.writeInt(i); oout.writeInt(1653984); oout.flush(); // close the stream oout.close(); // create an ObjectInputStream for the file we created before ObjectInputStream ois = new ObjectInputStream(new FileInputStream("test.txt")); // read and print an int System.out.println("" + ois.readInt()); // read and print an int System.out.println("" + ois.readInt()); } catch (Exception ex) { ex.printStackTrace(); } } static class Example implements Serializable { String s = "Hello World!"; private void writeObject(ObjectOutputStream out) throws IOException, ClassNotFoundException { out.defaultWriteObject(); } } }
讓我們編譯和運行上麵的程序,這將產生以下結果:
319874 1653984