//But this happened so that the word may be fulfilled which was written in their law, 'They hated me without a cause.' (John 15:25) package com.javarush.task.task16.task1610; /* РаÑÑÑÐ°Ð²Ñ Ð²ÑÐ·Ð¾Ð²Ñ Ð¼ÐµÑодов join() */ public class Solution { public static void main(String[] args) throws InterruptedException { Cat cat1 = new Cat("ÐÑÑка"); Cat cat2 = new Cat("ÐÑÑинка"); } private static void investigateWorld() { try{ Thread.sleep(200); }catch(InterruptedException e) {e.printStackTrace();} } public static class Cat extends Thread { protected Kitten kitten1; protected Kitten kitten2; public Cat(String name) { super(name); kitten1 = new Kitten("ÐоÑенок 1, мама - " + getName()); kitten2 = new Kitten("ÐоÑенок 2, мама - " + getName()); start(); } public void run() { System.out.println(getName() + " Ñодила 2 коÑенка"); try { initAllKitten(); kitten1.join(); kitten2.join(); } catch (InterruptedException e) { } System.out.println(getName() + ": ÐÑе коÑÑÑа в коÑзинке. " + getName() + " ÑобÑала Ð¸Ñ Ð½Ð°Ð·Ð°Ð´"); } private void initAllKitten() throws InterruptedException { kitten1.start(); kitten2.start(); } } public static class Kitten extends Thread { public Kitten(String name) { super(name); } public void run() { System.out.println(getName() + ", вÑлез из коÑзинки"); investigateWorld(); } } } /* РаÑÑÑÐ°Ð²Ñ Ð²ÑÐ·Ð¾Ð²Ñ Ð¼ÐµÑодов join() 1. РазбеÑиÑÑ, ÑÑо Ð´ÐµÐ»Ð°ÐµÑ Ð¿ÑогÑамма. 2. РаÑÑÑÐ°Ð²Ñ Ð²ÑÐ·Ð¾Ð²Ñ Ð¼ÐµÑодов join() Ñак, ÑÑÐ¾Ð±Ñ Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ коÑки вÑполнÑлоÑÑ ÑледÑÑÑее: 2.1. СнаÑала коÑка ÑÐ¾Ð¶Ð°ÐµÑ ÐºÐ¾ÑÑÑ. 2.2. ÐоÑом вÑе коÑÑÑа вÑлазÑÑ Ð¸Ð· коÑзинки в пÑоизволÑном поÑÑдке. 2.3. РконÑе коÑка ÑобиÑÐ°ÐµÑ Ð¸Ñ Ð½Ð°Ð·Ð°Ð´ в коÑзинкÑ. 2.4. ÐÑе ÑобÑÑÐ¸Ñ Ð´Ð»Ñ Ð¾Ð´Ð½Ð¾Ð¹ коÑки могÑÑ Ð±ÑÑÑ Ð¿ÐµÑемеÑÐ°Ð½Ñ Ñ ÑобÑÑиÑми Ð´Ð»Ñ Ð´ÑÑгой коÑки. 2.5. ÐобавиÑÑ Ñон коÑÑÑ (200 мÑ) в investigateWorld. ТÑебованиÑ: 1.âУ каждого коÑенка (обÑекÑа Ñипа Kitten) должен бÑÑÑ Ð²Ñзван меÑод join. 2.âÐеÑод investigateWorld должен обеÑпеÑиваÑÑ Ñон коÑенка на 200 мÑ. ÐÑполÑзÑй меÑод Thread.sleep(200). 3.âÐÑогÑамма должна ÑоздаваÑÑ Ð´Ð²Ðµ коÑки и ÑеÑÑÑе коÑенка. 4.âÐеÑодÑ, коÑоÑÑе оÑвеÑаÑÑ Ð·Ð° вÑвод в конÑолÑ, не изменÑÑÑ. 5.âÐÑвод пÑогÑÐ°Ð¼Ð¼Ñ Ð´Ð¾Ð»Ð¶ÐµÐ½ оÑобÑажаÑÑ Ð²Ñполнение ÑÑебований ÑÑловиÑ. package com.javarush.task.task16.task1610; * РаÑÑÑÐ°Ð²Ñ Ð²ÑÐ·Ð¾Ð²Ñ Ð¼ÐµÑодов join() * public class Solution { public static void main(String[] args) throws InterruptedException { Cat cat1 = new Cat("ÐÑÑка"); Cat cat2 = new Cat("ÐÑÑинка"); } private static void investigateWorld() { } public static class Cat extends Thread { protected Kitten kitten1; protected Kitten kitten2; public Cat(String name) { super(name); kitten1 = new Kitten("ÐоÑенок 1, мама - " + getName()); kitten2 = new Kitten("ÐоÑенок 2, мама - " + getName()); start(); } public void run() { System.out.println(getName() + " Ñодила 2 коÑенка"); try { initAllKitten(); } catch (InterruptedException e) { } System.out.println(getName() + ": ÐÑе коÑÑÑа в коÑзинке. " + getName() + " ÑобÑала Ð¸Ñ Ð½Ð°Ð·Ð°Ð´"); } private void initAllKitten() throws InterruptedException { kitten1.start(); kitten2.start(); } } public static class Kitten extends Thread { public Kitten(String name) { super(name); } public void run() { System.out.println(getName() + ", вÑлез из коÑзинки"); investigateWorld(); } } } */