java_のシリアライズ

  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 }

 

おすすめ

転載: www.cnblogs.com/aikang525/p/11311899.html