<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    日出星辰

    用序列化(Serializable)保存、讀取對象

       實現Serializable借口的對象可以被轉換成一系列字節,并可以在以后使用時完全恢復原來的樣子。這一過程也可以在網絡中進行,這樣就可以先在windows機器上創建一個對象,對其序列化,然后通過網絡發送給Linux機器,就可以在Linux機器上準確無誤地恢復成原來的樣子。整個過程不必關心數據在不同機器上如何表示,也不必關心字節的順序或其他細節。

          序列化的思想就是“凍結”對象,操作對象(寫到磁盤,通過網絡傳輸等),然后“解凍”對象,重新獲得可用的Java對象。功能的實現要靠ObjectInputStream/ObjectOutputStream類,完全保真原數據,并且開發愿意用Serializable。

         實現了Serializable接口的類為保證serialVersionUID 值跨不同 java 編譯器實現的一致性,序列化類必須聲明一個明確的 serialVersionUID 值。

         ClassA.java

    public class ClassA implements Serializable {
    
    	private static final long serialVersionUID = 6013572251564847381L;
    	private String name = "My name is a";
    	private ClassB b = null;
    
    	ClassA() {
    		b = new ClassB();
    	}
    
    	public String show() {
    
    		System.out.println("a.toString <a.name=\"" + this.name
    				+ "\" a.b.name=\"" + this.b.getName() + "\">");
    
    		return "a.toString <a.name=" + this.name + " a.b.name="
    				+ this.b.getName() + ">";
    		// \" 雙引號
    		// \' 單引號
    		// \\ 反斜線
    	}
    
                     .......................
    }
    

        ClassB.java

    public class ClassB implements Serializable{
    
    	private static final long serialVersionUID = -4324044767844361076L;
    
    	private String name="My name is b";
    	
    	ClassB(){}
    
    	public String getName() {
    		return name;
    	}
    
    	public void setName(String name) {
    		this.name = name;
    	}
    	
    	
    }
    

    將對象內容保存到文本中

    WriteSeri.java

    public class WriteSeri {
    
    	public static void main(String args[]){
    		ObjectOutputStream outObj=null;
    		try {
    			//將對象內容寫入到文本中
    			FileOutputStream  outStr=new FileOutputStream("obj.txt");
    			outObj=new ObjectOutputStream(outStr);
    			ClassA a=new ClassA();
    			outObj.writeObject(a);
    			System.out.println("write obj:"+a.show());
    			outObj.flush();
    		} catch (FileNotFoundException e) {
    			e.printStackTrace();
    		} catch (IOException e) {
    			e.printStackTrace();
    		}finally{
    				try {
    				if (outObj != null) {
    					outObj.close();
    				}
    			} catch (IOException e) {
    				e.printStackTrace();
    			}
    		}
    	}
    }
    

    輸出結果:

    a.toString <a.name="My name is a" a.b.name="My name is b">
    write obj:a.toString <a.name=My name is a a.b.name=My name is b>

    將文本內容還原給對象

    ReadSeri.java

    public class ReadSeri {
    
    	public static void main(String args[]) {
    		ObjectInputStream inObj = null;
    		try {
    			FileInputStream inStr = new FileInputStream("obj.txt");
    			inObj = new ObjectInputStream(inStr);
    			ClassA a = (ClassA) inObj.readObject();
    			System.out.println("read object:" + a.show());
    		} catch (FileNotFoundException e) {
    			e.printStackTrace();
    		} catch (IOException e) {
    			e.printStackTrace();
    		} catch (ClassNotFoundException e) {
    			e.printStackTrace();
    		} finally {
    			if (inObj != null) {
    				try {
    					inObj.close();
    				} catch (IOException e) {
    					e.printStackTrace();
    				}
    			}
    		}
    	}
    }
    

    輸出結果:

    a.toString <a.name="My name is a" a.b.name="My name is b">
    read object:a.toString <a.name=My name is a a.b.name=My name is b>

     

     

     

     

    posted on 2011-08-23 15:33 日出星辰 閱讀(186) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲精品亚洲人成在线观看下载| 又色又污又黄无遮挡的免费视| 久久爰www免费人成| 久久国产精品成人免费| 免费精品国产自产拍在线观看图片| 免费观看无遮挡www的小视频| 毛片免费观看网址| 免费a级毛片在线观看| 亚洲国产欧美日韩精品一区二区三区 | 久久免费视频一区| 亚色九九九全国免费视频| 亚洲成aⅴ人片在线影院八| 看Aⅴ免费毛片手机播放| 天堂在线免费观看| 午夜一区二区免费视频| 在线亚洲午夜理论AV大片| 亚洲大香伊人蕉在人依线| 成人免费激情视频| 亚洲大成色www永久网站| 国产成人亚洲合集青青草原精品| 三级片免费观看久久| 久久ww精品w免费人成| 午夜亚洲国产成人不卡在线| 久久伊人久久亚洲综合| 亚洲精品国产精品| vvvv99日韩精品亚洲| 国产福利电影一区二区三区,免费久久久久久久精 | 亚洲av无码国产精品色在线看不卡| 亚洲国产国产综合一区首页| 国产精品久久亚洲一区二区| 亚洲福利中文字幕在线网址| 国产免费一级高清淫曰本片| 亚洲成在人天堂在线| 97在线观免费视频观看| 亚洲国产精品国自产拍电影| 男女免费观看在线爽爽爽视频| 亚洲av无码有乱码在线观看| 青娱乐免费视频在线观看| 国产精品亚洲专区无码唯爱网| 最新中文字幕电影免费观看| 特a级免费高清黄色片|