Всем доброго! Задачу решил-но непонятно вот что... В методе main написан код приведения obj к Movable, в другом случае-оставляем как есть:
Object obj = new Circle();
Movable movable = (Movable) obj;
Drawable drawable = new Rectangle();
IDE мне предложила следующее решение(вернее скорректировала мое). Оно-прошло. Но не понимаю...Итак:
if (object instanceof Drawable)
        {
            ((Drawable) object).draw();
        }

        if (object instanceof Movable)
        {
            ((Movable) object).move();
        }
Не пойму- зачем в первом случае, если объект "уже является реализующим Drawable" - приводить его к Drawable ! Ну и во втором случае та же история- объект уже Movable- а мы его как бы "на всякий случай" - я так это понимаю, - приводим к Movable. Зачем? В моем понимании приведение должно было быть так: " если объект НЕ Drawable-приводим к Drawable" и " если объект НЕ Movable-приводим к Movable" Как так?