java: вопрос: создание контейнера для фигур
Добавлено: 06 дек 2014, 23:51
всем доброго времени суток
есть сл. задание, состоящее из двух частей
//первая часть:
* определить иерархию фигур: Figure, Cirlce, Square, Rectangle.
* каждая фигура должна иметь метод получения площади фигуры,
* метод смещения фигуры на dx, dy и метод, который возвращает название фигуры.
public abstract class Figure {
double area();
void move(double dx, double dy);
public String name() {...}
}
моя реализация первой части представлена тут http://pastebin.com/2hpUcE66
//вторая часть:
* создать контейнер для фигур - класс Desc.
* контейнер должен агрегировать массив фигур
* и иметь групповые методы area, move, printNames.
private Figure[] figures;
public double area() {}
public void move(double dx, double dy) {...}
public void printNames() {...}
у меня два вопроса:
1 - правильность "дизайна" для первой части с точки зрения ООП - есть ли минусы в такой реализации. может я что-то упускаю.
2 - не представляю как реализовать "контейнер" для фигур, который может,к примеру, содержать 1 квадрат и 10 прямоугольников..
просьба проговорить решение вопроса аналитически (без кода), используя весь основной функционал языка.
большое спасибо.
есть сл. задание, состоящее из двух частей
//первая часть:
* определить иерархию фигур: Figure, Cirlce, Square, Rectangle.
* каждая фигура должна иметь метод получения площади фигуры,
* метод смещения фигуры на dx, dy и метод, который возвращает название фигуры.
public abstract class Figure {
double area();
void move(double dx, double dy);
public String name() {...}
}
моя реализация первой части представлена тут http://pastebin.com/2hpUcE66
//вторая часть:
* создать контейнер для фигур - класс Desc.
* контейнер должен агрегировать массив фигур
* и иметь групповые методы area, move, printNames.
private Figure[] figures;
public double area() {}
public void move(double dx, double dy) {...}
public void printNames() {...}
у меня два вопроса:
1 - правильность "дизайна" для первой части с точки зрения ООП - есть ли минусы в такой реализации. может я что-то упускаю.
2 - не представляю как реализовать "контейнер" для фигур, который может,к примеру, содержать 1 квадрат и 10 прямоугольников..
просьба проговорить решение вопроса аналитически (без кода), используя весь основной функционал языка.
большое спасибо.