//I made known to them your name, and will make it known; that the love with which you loved me may be in them, and I in them. (John 17:26) package com.javarush.task.task18.task1811; /* Wrapper (Decorator) */ public class Solution { public static void main(String[] args) { new Thread(new DecoratorRunnableImpl(new DecoratorMyRunnableImpl(new RunnableImpl()))).start(); } public static class RunnableImpl implements Runnable { @Override public void run() { System.out.println("RunnableImpl body"); } } public static class DecoratorRunnableImpl implements Runnable { private Runnable component; public DecoratorRunnableImpl(Runnable component) { this.component = component; } @Override public void run() { System.out.print("DecoratorRunnableImpl body "); component.run(); } } public static class DecoratorMyRunnableImpl implements Runnable { private Runnable component; public DecoratorMyRunnableImpl(Runnable component) { this.component = component; } @Override public void run() { System.out.print("DecoratorMyRunnableImpl body "); component.run(); } } } /* Wrapper (Decorator) Разберись, что делает программа. Аналогично классу DecoratorRunnableImpl создай класс DecoratorMyRunnableImpl. Требования: 1. Создай класс DecoratorMyRunnableImpl, аналогичный DecoratorRunnableImpl. 2. После запуска, каждый класс должен вывести в консоль "'Имя класса' body". 3. Классы RunnableImpl и DecoratorRunnableImpl изменять нельзя. 4. Метод main изменять нельзя. */