//The Jews answered him, "We have a law, and by our law he ought to die, because he made himself the Son of God." (John 19:7) package com.javarush.task.task20.task2015; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.io.Serializable; /* ÐеÑеопÑеделение ÑеÑиализаÑии */ public class Solution implements Serializable, Runnable { private transient Thread runner; private int speed; public Solution(int speed) { this.speed = speed; runner = new Thread(this); runner.start(); } public void run() { // do something here, does not matter } /** ÐеÑеопÑеделÑем ÑеÑиализаÑиÑ. ÐÐ»Ñ ÑÑого Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ обÑÑвиÑÑ Ð¼ÐµÑодÑ: private void writeObject(ObjectOutputStream out) throws IOException private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException ТепеÑÑ ÑеÑиализаÑиÑ/деÑеÑиализаÑÐ¸Ñ Ð¿Ð¾Ð¹Ð´ÐµÑ Ð¿Ð¾ наÑÐµÐ¼Ñ ÑÑенаÑÐ¸Ñ :) */ private void writeObject(ObjectOutputStream out) throws IOException { out.defaultWriteObject(); } private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException { in.defaultReadObject(); Thread thread = new Thread(this); thread.start(); } public static void main(String[] args) { } } /* ÐеÑеопÑеделение ÑеÑиализаÑии СделайÑе Ñак, ÑÑÐ¾Ð±Ñ Ð¿Ð¾Ñле деÑеÑиализаÑии ниÑÑ runner пÑодолжила ÑабоÑаÑÑ. ÐлÑÑевÑе Ñлова обÑекÑа runner менÑÑÑ Ð½ÐµÐ»ÑзÑ. Hint/ÐодÑказка: ÐонÑÑÑÑкÑÐ¾Ñ Ð½Ðµ вÑзÑваеÑÑÑ Ð¿Ñи деÑеÑиализаÑии, ÑолÑко иниÑиализиÑÑÑÑÑÑ Ð²Ñе полÑ. ТÑебованиÑ: 1.âÐлаÑÑ Solution должен поддеÑживаÑÑ Ð¸Ð½ÑеÑÑÐµÐ¹Ñ Serializable. 2.âÐлаÑÑ Solution должен поддеÑживаÑÑ Ð¸Ð½ÑеÑÑÐµÐ¹Ñ Runnable. 3.âÐоле runner в клаÑÑе Solution должно бÑÑÑ Ð¾Ð±ÑÑвлено Ñ Ð¼Ð¾Ð´Ð¸ÑикаÑоÑом transient. 4.âРмеÑоде readObject должен бÑÑÑ Ñоздан новÑй обÑÐµÐºÑ Ñипа Thread Ñ ÑекÑÑим обÑекÑом в каÑеÑÑве паÑамеÑÑа. 5.âРмеÑоде readObject должен бÑÑÑ Ð²Ñзван меÑод start Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ обÑекÑа Ñипа Thread. package com.javarush.task.task20.task2015; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.io.Serializable; * ÐеÑеопÑеделение ÑеÑиализаÑии * public class Solution implements { private Thread runner; private int speed; public Solution(int speed) { this.speed = speed; runner = new Thread(this); runner.start(); } public void run() { // do something here, does not matter } /** ÐеÑеопÑеделÑем ÑеÑиализаÑиÑ. ÐÐ»Ñ ÑÑого Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ обÑÑвиÑÑ Ð¼ÐµÑодÑ: private void writeObject(ObjectOutputStream out) throws IOException private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException ТепеÑÑ ÑеÑиализаÑиÑ/деÑеÑиализаÑÐ¸Ñ Ð¿Ð¾Ð¹Ð´ÐµÑ Ð¿Ð¾ наÑÐµÐ¼Ñ ÑÑенаÑÐ¸Ñ :) */ private void writeObject(ObjectOutputStream out) throws IOException { out.defaultWriteObject(); } private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException { in.defaultReadObject(); } public static void main(String[] args) { } } */