<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FFile%2FExternalizable</id>
		<title>Java Tutorial/File/Externalizable - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FFile%2FExternalizable"/>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/File/Externalizable&amp;action=history"/>
		<updated>2026-04-11T13:16:43Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://jexp.ru/index.php?title=Java_Tutorial/File/Externalizable&amp;diff=5298&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/File/Externalizable&amp;diff=5298&amp;oldid=prev"/>
				<updated>2010-06-01T05:19:17Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 05:19, 1 июня 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://jexp.ru/index.php?title=Java_Tutorial/File/Externalizable&amp;diff=5297&amp;oldid=prev</id>
		<title> в 17:44, 31 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/File/Externalizable&amp;diff=5297&amp;oldid=prev"/>
				<updated>2010-05-31T17:44:27Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==  implements Externalizable ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.io.Externalizable;&lt;br /&gt;
import java.io.FileInputStream;&lt;br /&gt;
import java.io.FileOutputStream;&lt;br /&gt;
import java.io.IOException;&lt;br /&gt;
import java.io.ObjectInput;&lt;br /&gt;
import java.io.ObjectInputStream;&lt;br /&gt;
import java.io.ObjectOutput;&lt;br /&gt;
import java.io.ObjectOutputStream;&lt;br /&gt;
public class MainClass {&lt;br /&gt;
  public static void main(String[] args) throws IOException, ClassNotFoundException {&lt;br /&gt;
    System.out.println(&amp;quot;Constructing objects:&amp;quot;);&lt;br /&gt;
    MyBean myBean = new MyBean(&amp;quot;A String &amp;quot;, 47);&lt;br /&gt;
    System.out.println(myBean);&lt;br /&gt;
    ObjectOutputStream o = new ObjectOutputStream(new FileOutputStream(&amp;quot;MyBean.out&amp;quot;));&lt;br /&gt;
    System.out.println(&amp;quot;Saving object:&amp;quot;);&lt;br /&gt;
    o.writeObject(myBean);&lt;br /&gt;
    o.close();&lt;br /&gt;
&lt;br /&gt;
    ObjectInputStream in = new ObjectInputStream(new FileInputStream(&amp;quot;MyBean.out&amp;quot;));&lt;br /&gt;
    System.out.println(&amp;quot;Recovering:&amp;quot;);&lt;br /&gt;
    myBean = (MyBean) in.readObject();&lt;br /&gt;
    System.out.println(myBean);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
class MyBean implements Externalizable {&lt;br /&gt;
  private int i;&lt;br /&gt;
  private String s; // No initialization&lt;br /&gt;
  public MyBean() {&lt;br /&gt;
    System.out.println(&amp;quot;MyBean Constructor&amp;quot;);&lt;br /&gt;
    // s, i not initialized&lt;br /&gt;
  }&lt;br /&gt;
  public MyBean(String x, int a) {&lt;br /&gt;
    System.out.println(&amp;quot;MyBean(String x, int a)&amp;quot;);&lt;br /&gt;
    s = x;&lt;br /&gt;
    i = a;&lt;br /&gt;
    // s &amp;amp; i initialized only in nondefault constructor.&lt;br /&gt;
  }&lt;br /&gt;
  public String toString() {&lt;br /&gt;
    return s + i;&lt;br /&gt;
  }&lt;br /&gt;
  public void writeExternal(ObjectOutput out) throws IOException {&lt;br /&gt;
    System.out.println(&amp;quot;MyBean.writeExternal&amp;quot;);&lt;br /&gt;
    out.writeObject(s);&lt;br /&gt;
    out.writeInt(i);&lt;br /&gt;
  }&lt;br /&gt;
  public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {&lt;br /&gt;
    System.out.println(&amp;quot;MyBean.readExternal&amp;quot;);&lt;br /&gt;
    s = (String) in.readObject();&lt;br /&gt;
    i = in.readInt();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
/**/&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;Constructing objects:&lt;br /&gt;
MyBean(String x, int a)&lt;br /&gt;
A String 47&lt;br /&gt;
Saving object:&lt;br /&gt;
MyBean.writeExternal&lt;br /&gt;
Recovering:&lt;br /&gt;
MyBean Constructor&lt;br /&gt;
MyBean.readExternal&lt;br /&gt;
A String 47&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Reconstructing an externalizable object ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.io.Externalizable;&lt;br /&gt;
import java.io.FileInputStream;&lt;br /&gt;
import java.io.FileOutputStream;&lt;br /&gt;
import java.io.IOException;&lt;br /&gt;
import java.io.ObjectInput;&lt;br /&gt;
import java.io.ObjectInputStream;&lt;br /&gt;
import java.io.ObjectOutput;&lt;br /&gt;
import java.io.ObjectOutputStream;&lt;br /&gt;
public class MainClass {&lt;br /&gt;
  public static void main(String[] args) throws IOException, ClassNotFoundException {&lt;br /&gt;
    System.out.println(&amp;quot;Constructing objects:&amp;quot;);&lt;br /&gt;
    MyBean myBean = new MyBean(&amp;quot;A String &amp;quot;, 47);&lt;br /&gt;
    System.out.println(myBean);&lt;br /&gt;
    ObjectOutputStream o = new ObjectOutputStream(new FileOutputStream(&amp;quot;MyBean.out&amp;quot;));&lt;br /&gt;
    System.out.println(&amp;quot;Saving object:&amp;quot;);&lt;br /&gt;
    o.writeObject(myBean);&lt;br /&gt;
    o.close();&lt;br /&gt;
&lt;br /&gt;
    ObjectInputStream in = new ObjectInputStream(new FileInputStream(&amp;quot;MyBean.out&amp;quot;));&lt;br /&gt;
    System.out.println(&amp;quot;Recovering:&amp;quot;);&lt;br /&gt;
    myBean = (MyBean) in.readObject();&lt;br /&gt;
    System.out.println(myBean);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
class MyBean implements Externalizable {&lt;br /&gt;
  private int i;&lt;br /&gt;
  private String s; // No initialization&lt;br /&gt;
  public MyBean() {&lt;br /&gt;
    System.out.println(&amp;quot;MyBean Constructor&amp;quot;);&lt;br /&gt;
    // s, i not initialized&lt;br /&gt;
  }&lt;br /&gt;
  public MyBean(String x, int a) {&lt;br /&gt;
    System.out.println(&amp;quot;MyBean(String x, int a)&amp;quot;);&lt;br /&gt;
    s = x;&lt;br /&gt;
    i = a;&lt;br /&gt;
    // s &amp;amp; i initialized only in nondefault constructor.&lt;br /&gt;
  }&lt;br /&gt;
  public String toString() {&lt;br /&gt;
    return s + i;&lt;br /&gt;
  }&lt;br /&gt;
  public void writeExternal(ObjectOutput out) throws IOException {&lt;br /&gt;
    System.out.println(&amp;quot;MyBean.writeExternal&amp;quot;);&lt;br /&gt;
    out.writeObject(s);&lt;br /&gt;
    out.writeInt(i);&lt;br /&gt;
  }&lt;br /&gt;
  public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {&lt;br /&gt;
    System.out.println(&amp;quot;MyBean.readExternal&amp;quot;);&lt;br /&gt;
    s = (String) in.readObject();&lt;br /&gt;
    i = in.readInt();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
/**/&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;Constructing objects:&lt;br /&gt;
MyBean(String x, int a)&lt;br /&gt;
A String 47&lt;br /&gt;
Saving object:&lt;br /&gt;
MyBean.writeExternal&lt;br /&gt;
Recovering:&lt;br /&gt;
MyBean Constructor&lt;br /&gt;
MyBean.readExternal&lt;br /&gt;
A String 47&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Simple use of Externalizable ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.io.Externalizable;&lt;br /&gt;
import java.io.FileInputStream;&lt;br /&gt;
import java.io.FileOutputStream;&lt;br /&gt;
import java.io.IOException;&lt;br /&gt;
import java.io.ObjectInput;&lt;br /&gt;
import java.io.ObjectInputStream;&lt;br /&gt;
import java.io.ObjectOutput;&lt;br /&gt;
import java.io.ObjectOutputStream;&lt;br /&gt;
class A implements Externalizable {&lt;br /&gt;
  public A() {&lt;br /&gt;
    System.out.println(&amp;quot;A Constructor&amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
  public void writeExternal(ObjectOutput out) throws IOException {&lt;br /&gt;
    System.out.println(&amp;quot;A.writeExternal&amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
  public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {&lt;br /&gt;
    System.out.println(&amp;quot;A.readExternal&amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
class B implements Externalizable {&lt;br /&gt;
  B() {&lt;br /&gt;
    System.out.println(&amp;quot;B Constructor&amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
  public void writeExternal(ObjectOutput out) throws IOException {&lt;br /&gt;
    System.out.println(&amp;quot;B.writeExternal&amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
  public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {&lt;br /&gt;
    System.out.println(&amp;quot;B.readExternal&amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
public class MainClass {&lt;br /&gt;
  public static void main(String[] args) throws IOException, ClassNotFoundException {&lt;br /&gt;
    System.out.println(&amp;quot;Constructing objects:&amp;quot;);&lt;br /&gt;
    A b1 = new A();&lt;br /&gt;
    B b2 = new B();&lt;br /&gt;
    ObjectOutputStream o = new ObjectOutputStream(new FileOutputStream(&amp;quot;File.out&amp;quot;));&lt;br /&gt;
    System.out.println(&amp;quot;Saving objects:&amp;quot;);&lt;br /&gt;
    o.writeObject(b1);&lt;br /&gt;
    o.writeObject(b2);&lt;br /&gt;
    o.close();&lt;br /&gt;
    ObjectInputStream in = new ObjectInputStream(new FileInputStream(&amp;quot;File.out&amp;quot;));&lt;br /&gt;
    System.out.println(&amp;quot;Recovering b1:&amp;quot;);&lt;br /&gt;
    b1 = (A) in.readObject();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
/*&lt;br /&gt;
*/&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;Constructing objects:&lt;br /&gt;
A Constructor&lt;br /&gt;
B Constructor&lt;br /&gt;
Saving objects:&lt;br /&gt;
A.writeExternal&lt;br /&gt;
B.writeExternal&lt;br /&gt;
Recovering b1:&lt;br /&gt;
A Constructor&lt;br /&gt;
A.readExternal&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
			</entry>

	</feed>