1 インポート java.io. * ; 2 。3 クラス人実装シリアライズ{ 4 / * 5 *シリアライゼーションおよびデシリアライゼーションの時間、それは例外持つNotSerializableExceptionない配列スローされる 6 にjava.io.Serializableインタフェースを実装することにより、*開始直列化機能は、人格状態がシリアライズされたか、直列化復元することはありませんこのタイプのインタフェースを達成するために 7は、 インタフェースもマーク型コネクタとして知られている*シリアライズ可能な 8つの *シリアライズとデシリアライズされるクラスはSerializableインタフェースを実装する必要がありますクラスにマーカーを追加 9 時に*およびシーケンスは、デシリアライゼーションクラスはラベルあり検出されるかどうかを 10 *は、次のとおりです。シリアライズとデシリアライズすることができます 11 * NOを:スロー 12がある * / 13で プライベート文字列名; 14 プライベート int型年齢; 15 16 公衆人(文字列名、int型の年齢){ 17 この .nameの= 名前。 18 この .age = 年齢; 19 } 20 21 公衆の人々 (){ 22 } 23 24 公共の文字列のgetName(){ 25 リターン名。 26 } 27 28 公共の ボイドのsetName(文字列名){ 29 この .nameの= 名前。 30 } 31 32 公共 INT getAge(){ 33は 戻り、年齢 34である } 35 36 公共 ボイド setAge(int型の年齢){ 37 [ この .age = ;年齢 38である } 39 } 40 41である れる42 パブリック クラスTEST01 {に 43である / ** 44れる * java.io. OutputStream ObjectOutputStreamの延び 45 にObjectOutputStream:直列ストリーム* 46である *効果:に格納されたファイルに書き込まれたストリームオブジェクトのメソッド 47 * <P> 48 *コンストラクタ: 49 *たObjectOutputStream(OutputStreamをアウト):指定されたOutputStreamdeに書き込まれたObjectOutputStreamを作成する。 50個の *パラメータ:のOutputStreamアウト:バイトの出力ストリーム 51は、 * <P> 52である *特定のメンバーの方法: 53がある *ボイドwritObject(オブジェクトobj):指定されたオブジェクトを書き込みますObjectOutputStreamのに 54で * <P> 55の *手順 56 ObjectOutputStreamのオブジェクトのコンストラクタはバイトの出力ストリームに渡される作成* 1 57 WriteObjectはObjectOutputStreamのオブジェクトを使用する方法* 2、オブジェクトがファイルに書き込まれている 58 * 3.リソースを解放する 59 * / 60 61である パブリック 静的 ボイドメイン(文字列[]引数)をスローにIOException、ClassNotFoundExceptionが{ 62であります show01(); 63である show02(); 64 } 65 66 67 プライベート 静的 ボイド show01()スローIOExceptionが{ 68 // 1. ObjectOutputStreamのオブジェクトのコンストラクタは、バイトの出力ストリームに渡されるの作成 69 にObjectOutputStream OOS = 新しい新しい ObjectOutputStreamの(新しい新規たFileOutputStream( "F:\\ \\ objTest.txtファイルテスト" )); 70 // 2. WriteObjectはObjectOutputStreamのオブジェクトは、オブジェクトがファイルに書き込まれ、 71である 人の人= 新しい新人( "備"、18 ); 72 oos.writeObject(人); 73れます // リソースの解放3. 74 oos.close(); 75 } 76 77 / ** 78 * <P> 79 * java.io.ObjectInputStream入力ストリームが延び 80個の *ストリームオブジェクトは、ObjectInputStreamのデシリアライズ: 81 *効果:ファイル保全オブジェクトは、フロー読み出し 82 * <P> 83 *コンストラクタを: 84 *(入力ストリームにおける)のObjectInputStream: 85個の *パラメータ: 86 *入力ストリームにおける:バイトの入力ストリーム 87 *特定のメンバー方法: 88 *オブジェクトのreadObject()のObjectInputStreamからオブジェクト読み込み 89 *使用手順を: 90 * 1バイトのObjectInputStreamのオブジェクトコンストラクタ入力ストリームを作成移し 91 メソッド* 2 ObjectInputStreamのオブジェクト保存対象ファイルを読み取るのreadObject 92 リソース* 3リリース 93 * 4.オブジェクト(プリント)を読み出し 94 * / 95 公共 静的 ボイド show02()はスローにIOException、ClassNotFoundExceptionが{ 96 // 1バイトのObjectInputStreamのオブジェクトコンストラクタ入力ストリームを作成し、転送 97 のObjectInputStream OIS = 新しい新しい ObjectInputStreamの(新しい新規のFileInputStream(「F:\\ \\ファイルテストをobjTest.txt " )); 98 // 2.使用ObjectInputStreamのオブジェクトは、オブジェクト保持するファイルを読み込むのreadObject 99 オブジェクトOを=ois.readObject(); 100 / * readObjectメソッド宣言は、(例外クラス・ファイルが見つかりません)ClassNotFoundExceptionがスロー 101 クラスオブジェクトは、クラスファイル内に存在しない場合、この例外がスローされた* 102の *デシリアライズ条件: 103 * 1。クラスはSerializableを実装しなければならない 104 * 2クラスは、対応するクラス内に存在しなければならないファイル 105 * / 106 // 2.1の人が強くバックタイプを入力 107 人O1 = (人)O、 108 のSystem.out.println(o1.getName() + "年齢" + o1.getAge()); 109の // 3.リリースリソース 110 ois.close(); 111 112 } 113 }