﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-喜欢喝咖啡，喜欢Java</title><link>http://www.blogjava.net/a3mao/</link><description /><language>zh-cn</language><lastBuildDate>Sun, 12 Apr 2026 06:10:50 GMT</lastBuildDate><pubDate>Sun, 12 Apr 2026 06:10:50 GMT</pubDate><ttl>60</ttl><item><title>Serializable对象序列化实例</title><link>http://www.blogjava.net/a3mao/archive/2006/11/09/80098.html</link><dc:creator>a3mao</dc:creator><author>a3mao</author><pubDate>Thu, 09 Nov 2006 04:22:00 GMT</pubDate><guid>http://www.blogjava.net/a3mao/archive/2006/11/09/80098.html</guid><wfw:comment>http://www.blogjava.net/a3mao/comments/80098.html</wfw:comment><comments>http://www.blogjava.net/a3mao/archive/2006/11/09/80098.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/a3mao/comments/commentRss/80098.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/a3mao/services/trackbacks/80098.html</trackback:ping><description><![CDATA[
		<p>
				<font face="新宋体">
						<font color="#7f0055">
								<strong>
										<font size="1">转自：</font>
										<a href="http://www.j2medev.com/code/j2se/language/200602/1343.html">
												<font size="1">http://www.j2medev.com/code/j2se/language/200602/1343.html</font>
										</a>
										<br />
										<br />
										<font size="1">import </font>
								</strong>
								<font size="1">
								</font>
						</font>
						<font size="1">
								<font color="#000000">java.io.FileInputStream;</font>
								<br />
								<font color="#7f0055">
										<b>import </b>
								</font>
								<font color="#000000">java.io.FileOutputStream;</font>
								<br />
								<font color="#7f0055">
										<b>import </b>
								</font>
								<font color="#000000">java.io.ObjectInputStream;</font>
								<br />
								<font color="#7f0055">
										<b>import </b>
								</font>
								<font color="#000000">java.io.ObjectOutputStream;</font>
								<br />
								<font color="#7f0055">
										<b>import </b>
								</font>
								<font color="#000000">java.io.Serializable;</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#7f0055">
										<b>public class </b>
								</font>
								<font color="#000000">CardReader </font>
								<font color="#000000">{</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public static </b>
								</font>
								<font color="#7f0055">
										<b>void </b>
								</font>
								<font color="#000000">main</font>
								<font color="#000000">(</font>
								<font color="#000000">String</font>
								<font color="#000000">[] </font>
								<font color="#000000">args</font>
								<font color="#000000">) {</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">Card3 card = </font>
								<font color="#7f0055">
										<b>new </b>
								</font>
								<font color="#000000">Card3</font>
								<font color="#000000">(</font>
								<font color="#990000">12</font>
								<font color="#000000">, Card3.SPADES</font>
								<font color="#000000">)</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">System.out.println</font>
								<font color="#000000">(</font>
								<font color="#2a00ff">"Card to write is: " </font>
								<font color="#000000">+ card</font>
								<font color="#000000">)</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>try </b>
								</font>
								<font color="#000000">{</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">FileOutputStream out = </font>
								<font color="#7f0055">
										<b>new </b>
								</font>
								<font color="#000000">FileOutputStream</font>
								<font color="#000000">(</font>
								<font color="#2a00ff">"card.out"</font>
								<font color="#000000">)</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">ObjectOutputStream oos = </font>
								<font color="#7f0055">
										<b>new </b>
								</font>
								<font color="#000000">ObjectOutputStream</font>
								<font color="#000000">(</font>
								<font color="#000000">out</font>
								<font color="#000000">)</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">oos.writeObject</font>
								<font color="#000000">(</font>
								<font color="#000000">card</font>
								<font color="#000000">)</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">oos.flush</font>
								<font color="#000000">()</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">} </font>
								<font color="#7f0055">
										<b>catch </b>
								</font>
								<font color="#000000">(</font>
								<font color="#000000">Exception e</font>
								<font color="#000000">) {</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">System.out.println</font>
								<font color="#000000">(</font>
								<font color="#2a00ff">"Problem serializing: " </font>
								<font color="#000000">+ e</font>
								<font color="#000000">)</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">Card3 acard = </font>
								<font color="#7f0055">
										<b>null</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>try </b>
								</font>
								<font color="#000000">{</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">FileInputStream in = </font>
								<font color="#7f0055">
										<b>new </b>
								</font>
								<font color="#000000">FileInputStream</font>
								<font color="#000000">(</font>
								<font color="#2a00ff">"card.out"</font>
								<font color="#000000">)</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">ObjectInputStream ois = </font>
								<font color="#7f0055">
										<b>new </b>
								</font>
								<font color="#000000">ObjectInputStream</font>
								<font color="#000000">(</font>
								<font color="#000000">in</font>
								<font color="#000000">)</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">acard = </font>
								<font color="#000000">(</font>
								<font color="#000000">Card3</font>
								<font color="#000000">) (</font>
								<font color="#000000">ois.readObject</font>
								<font color="#000000">())</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">} </font>
								<font color="#7f0055">
										<b>catch </b>
								</font>
								<font color="#000000">(</font>
								<font color="#000000">Exception e</font>
								<font color="#000000">) {</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">System.out.println</font>
								<font color="#000000">(</font>
								<font color="#2a00ff">"Problem serializing: " </font>
								<font color="#000000">+ e</font>
								<font color="#000000">)</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">System.out.println</font>
								<font color="#000000">(</font>
								<font color="#2a00ff">"Card read is: " </font>
								<font color="#000000">+ acard</font>
								<font color="#000000">)</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#000000">}</font>
								<br />
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#7f0055">
										<b>class </b>
								</font>
								<font color="#000000">Card3 </font>
								<font color="#7f0055">
										<b>implements </b>
								</font>
								<font color="#000000">Serializable </font>
								<font color="#000000">{</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>private </b>
								</font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">suit = UNASSIGNED;</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>private </b>
								</font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">number = UNASSIGNED;</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public final static </b>
								</font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">UNASSIGNED = -</font>
								<font color="#990000">1</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public final static </b>
								</font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">DIAMONDS = </font>
								<font color="#990000">1</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public final static </b>
								</font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">CLUBS = </font>
								<font color="#990000">2</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public final static </b>
								</font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">HEARTS = </font>
								<font color="#990000">3</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public final static </b>
								</font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">SPADES = </font>
								<font color="#990000">4</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public final static </b>
								</font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">ACE = </font>
								<font color="#990000">1</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public final static </b>
								</font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">KING = </font>
								<font color="#990000">13</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public </b>
								</font>
								<font color="#000000">Card3</font>
								<font color="#000000">(</font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">number, </font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">suit</font>
								<font color="#000000">) {</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>if </b>
								</font>
								<font color="#000000">(</font>
								<font color="#000000">isValidNumber</font>
								<font color="#000000">(</font>
								<font color="#000000">number</font>
								<font color="#000000">)) {</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>this</b>
								</font>
								<font color="#000000">.number = number;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">} </font>
								<font color="#7f0055">
										<b>else </b>
								</font>
								<font color="#000000">{</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#3f7f5f">//Error</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>if </b>
								</font>
								<font color="#000000">(</font>
								<font color="#000000">isValidSuit</font>
								<font color="#000000">(</font>
								<font color="#000000">suit</font>
								<font color="#000000">)) {</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>this</b>
								</font>
								<font color="#000000">.suit = suit;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">} </font>
								<font color="#7f0055">
										<b>else </b>
								</font>
								<font color="#000000">{</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#3f7f5f">//Error</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public </b>
								</font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">getSuit</font>
								<font color="#000000">() {</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>return </b>
								</font>
								<font color="#000000">suit;</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public </b>
								</font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">getNumber</font>
								<font color="#000000">() {</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>return </b>
								</font>
								<font color="#000000">number;</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public static </b>
								</font>
								<font color="#7f0055">
										<b>boolean </b>
								</font>
								<font color="#000000">isValidNumber</font>
								<font color="#000000">(</font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">number</font>
								<font color="#000000">) {</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>if </b>
								</font>
								<font color="#000000">(</font>
								<font color="#000000">number &gt;= ACE &amp;&amp; number &lt;= KING</font>
								<font color="#000000">) {</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>return true</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">} </font>
								<font color="#7f0055">
										<b>else </b>
								</font>
								<font color="#000000">{</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>return false</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public static </b>
								</font>
								<font color="#7f0055">
										<b>boolean </b>
								</font>
								<font color="#000000">isValidSuit</font>
								<font color="#000000">(</font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">suit</font>
								<font color="#000000">) {</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>if </b>
								</font>
								<font color="#000000">(</font>
								<font color="#000000">suit &gt;= DIAMONDS &amp;&amp; suit &lt;= SPADES</font>
								<font color="#000000">) {</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>return true</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">} </font>
								<font color="#7f0055">
										<b>else </b>
								</font>
								<font color="#000000">{</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>return false</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public </b>
								</font>
								<font color="#7f0055">
										<b>boolean </b>
								</font>
								<font color="#000000">equals</font>
								<font color="#000000">(</font>
								<font color="#000000">Object obj</font>
								<font color="#000000">) {</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>if </b>
								</font>
								<font color="#000000">(</font>
								<font color="#000000">obj </font>
								<font color="#7f0055">
										<b>instanceof </b>
								</font>
								<font color="#000000">Card3</font>
								<font color="#000000">) {</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">Card3 card = </font>
								<font color="#000000">(</font>
								<font color="#000000">Card3</font>
								<font color="#000000">) </font>
								<font color="#000000">obj;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>if </b>
								</font>
								<font color="#000000">(</font>
								<font color="#000000">card.getNumber</font>
								<font color="#000000">() </font>
								<font color="#000000">== </font>
								<font color="#7f0055">
										<b>this</b>
								</font>
								<font color="#000000">.number &amp;&amp; card.getSuit</font>
								<font color="#000000">() </font>
								<font color="#000000">== </font>
								<font color="#7f0055">
										<b>this</b>
								</font>
								<font color="#000000">.suit</font>
								<font color="#000000">) {</font>
								<br />
								<font color="#ffffff">        </font>
								<font color="#7f0055">
										<b>return true</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">} </font>
								<font color="#7f0055">
										<b>else </b>
								</font>
								<font color="#000000">{</font>
								<br />
								<font color="#ffffff">        </font>
								<font color="#7f0055">
										<b>return false</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">} </font>
								<font color="#7f0055">
										<b>else </b>
								</font>
								<font color="#000000">{</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>return false</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public </b>
								</font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">hashCode</font>
								<font color="#000000">() {</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>return </b>
								</font>
								<font color="#000000">number * suit;</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public </b>
								</font>
								<font color="#000000">String toString</font>
								<font color="#000000">() {</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>return </b>
								</font>
								<font color="#000000">numberToString</font>
								<font color="#000000">(</font>
								<font color="#7f0055">
										<b>this</b>
								</font>
								<font color="#000000">.number</font>
								<font color="#000000">) </font>
								<font color="#000000">+ </font>
								<font color="#2a00ff">" of " </font>
								<font color="#000000">+ suitToString</font>
								<font color="#000000">(</font>
								<font color="#7f0055">
										<b>this</b>
								</font>
								<font color="#000000">.suit</font>
								<font color="#000000">)</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public static </b>
								</font>
								<font color="#000000">String numberToString</font>
								<font color="#000000">(</font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">number</font>
								<font color="#000000">) {</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">String result = </font>
								<font color="#2a00ff">""</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>switch </b>
								</font>
								<font color="#000000">(</font>
								<font color="#000000">number</font>
								<font color="#000000">) {</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#000000">ACE:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Ace"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#990000">2</font>
								<font color="#000000">:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Two"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#990000">3</font>
								<font color="#000000">:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Three"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#990000">4</font>
								<font color="#000000">:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Four"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#990000">5</font>
								<font color="#000000">:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Five"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#990000">6</font>
								<font color="#000000">:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Six"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#990000">7</font>
								<font color="#000000">:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Seven"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#990000">8</font>
								<font color="#000000">:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Eight"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#990000">9</font>
								<font color="#000000">:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Nine"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#990000">10</font>
								<font color="#000000">:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Ten"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#990000">11</font>
								<font color="#000000">:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Jack"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#990000">12</font>
								<font color="#000000">:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Queen"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#000000">KING:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"King"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#000000">UNASSIGNED:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Invalid Number"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>return </b>
								</font>
								<font color="#000000">result;</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">
								</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#7f0055">
										<b>public static </b>
								</font>
								<font color="#000000">String suitToString</font>
								<font color="#000000">(</font>
								<font color="#7f0055">
										<b>int </b>
								</font>
								<font color="#000000">suit</font>
								<font color="#000000">) {</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">String result = </font>
								<font color="#2a00ff">""</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>switch </b>
								</font>
								<font color="#000000">(</font>
								<font color="#000000">suit</font>
								<font color="#000000">) {</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#000000">DIAMONDS:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Diamonds"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#000000">CLUBS:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Clubs"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#000000">HEARTS:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Hearts"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#000000">SPADES:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Spades"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>case </b>
								</font>
								<font color="#000000">UNASSIGNED:</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#000000">result = </font>
								<font color="#2a00ff">"Invalid Suit"</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">      </font>
								<font color="#7f0055">
										<b>break</b>
								</font>
								<font color="#000000">;</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#000000">}</font>
								<br />
								<font color="#ffffff">    </font>
								<font color="#7f0055">
										<b>return </b>
								</font>
								<font color="#000000">result;</font>
								<br />
								<font color="#ffffff">  </font>
								<font color="#000000">}</font>
								<br />
								<font color="#000000">}</font>
						</font>
				</font>
		</p>
<img src ="http://www.blogjava.net/a3mao/aggbug/80098.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/a3mao/" target="_blank">a3mao</a> 2006-11-09 12:22 <a href="http://www.blogjava.net/a3mao/archive/2006/11/09/80098.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Serializable</title><link>http://www.blogjava.net/a3mao/archive/2006/11/09/80094.html</link><dc:creator>a3mao</dc:creator><author>a3mao</author><pubDate>Thu, 09 Nov 2006 04:12:00 GMT</pubDate><guid>http://www.blogjava.net/a3mao/archive/2006/11/09/80094.html</guid><wfw:comment>http://www.blogjava.net/a3mao/comments/80094.html</wfw:comment><comments>http://www.blogjava.net/a3mao/archive/2006/11/09/80094.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/a3mao/comments/commentRss/80094.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/a3mao/services/trackbacks/80094.html</trackback:ping><description><![CDATA[
		<h3>接口 java.io.Serializable </h3>
		<dl>
				<dt>public interface <b>Serializable</b></dt>
		</dl>
		<p>实现 java.io.Serializable 接口的类是可序列化的。没有实现此接口的类将不能使它们的任一状态被序列化或逆序列化。序列化类的所有子类本身都是可序列化的。这个序列化接口没有任何方法和域，仅用于标识序列化的语意。 </p>
		<p>允许非序列化类的子类型序列化，子类型可以假定负责保存和恢复父类型的公有的、保护的和(如果可访问)包的域的状态。只要该类(扩展)有一个无参构造子，可初始化它的状态，那么子类型就可承担上述职责。在这种情况下申明一个可序列化的类是一个错误。此错误将在运行时被检测。 </p>
		<p>在逆序列化期间，将使用非序列化类的公用的或保护的无参构造子对它的域进行初始化。可序列化子类必须能访问父类的无参构造子。它的所有域将从相应流中被恢复。 </p>
		<p>当遍历一个图象时，很可能遇到一个不支持序列化接口的对象。此时将抛出 NotSerializableException 异常，且标识该非序列化对象类。 </p>
		<p>在序列化处理过程中需要特定句柄的类，必须使用如下这些恰当的标记实现特定的方法： </p>
		<p>
		</p>
		<pre> private void writeObject(java.io.ObjectOutputStream out)
     throws IOException
 private void readObject(java.io.ObjectInputStream in)
     throws IOException, ClassNotFoundException; 
 </pre>
		<p>writeObject 方法负责写特定类的对象的状态，以至相应的 readObject 方法能恢复它。 通过调用 out.defaultWriteObject 可激活保存对象域的缺省机制。此方法不必关心状态是属于它的父类还是子类。 使用 writeObject 方法或基本类型支持的 DataOutput 方法将每个域的状态保存到 ObjectOutputStream 中。 </p>
		<p>readObject 方法负责从此流中读取并恢复类的域。它可能调用 in.defaultReadObject 方法来调用该对象的非静态和非暂时的域的缺省恢复机制。 defaultReadObject 方法使用该流中的信息，用当前对象中的已命名域分配保存在流中该对象的相应域。当类已改进增加了新域时，这个接口也做相应处理。此方法不必关心状态是属于它的父类还是子类。 使用 writeObject 方法或基本类型支持的 DataOutput 方法将每个域的状态保存到 ObjectOutputStream 中。</p>
<img src ="http://www.blogjava.net/a3mao/aggbug/80094.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/a3mao/" target="_blank">a3mao</a> 2006-11-09 12:12 <a href="http://www.blogjava.net/a3mao/archive/2006/11/09/80094.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>