|
Слияние N-количество объектов в один | ☑ | ||
---|---|---|---|---|
0
alexandr_87
20.06.18
✎
16:53
|
Есть интерфейс Shape:
public interface Shape { public double area(); } есть классы circle,rectangle, triangle public class Circle implements Shape{ public double getArea() { return //формула } } public class Rectangle implements Shape{ public double getArea() { return //формула } } public class Triangle implements Shape{ public double getArea() { return //формула } } При создание объектов у пользователя будет возможность объединять эти объекты, комбинации много, на выходе получится новый составной объект. Вопрос как объединить эти объекты в один составной. Спасибо. |
|||
1
Ненавижу 1С
гуру
20.06.18
✎
16:55
|
||||
2
alexandr_87
20.06.18
✎
17:00
|
спасибо будем изучать
|
|||
3
Garykom
гуру
20.06.18
✎
17:18
|
(1) В данном случае лишнее, ибо достаточно объявить
|
|||
4
Ненавижу 1С
гуру
20.06.18
✎
17:20
|
(3) тогда уж
public class Complex implements Shape { private List<Object> items; } |
|||
5
Garykom
гуру
20.06.18
✎
17:22
|
(4) Множественное наследование интерфейсов разрешено и удобнее ибо составной объект != фигурный
|
|||
6
Garykom
гуру
20.06.18
✎
17:23
|
(4) Хотя если составной объект всего одного вида то да
|
|||
7
Ненавижу 1С
гуру
20.06.18
✎
17:23
|
(5) 1. в интерфейсе не бывает полей
2. составной объект наоборот удобнее когда того же интерфейса |
|||
8
Garykom
гуру
20.06.18
✎
17:26
|
(7) >1. в интерфейсе не бывает полей
Это в C# не бывает, а тут ХЗ что )) |
|||
9
Garykom
гуру
20.06.18
✎
17:29
|
(8)+ Объявлен метод "area()" а реализованы какие то "getArea()"
|
|||
10
alexandr_87
20.06.18
✎
17:54
|
Данный пример на яве, в спешку писал не обратил внимание
|
|||
11
Ching Wo
20.06.18
✎
20:44
|
(0) Это что за изык?
|
|||
12
Сияющий в темноте
20.06.18
✎
22:22
|
А что мы хотим получить на выходе?Обьект,который может быть одним из обьектов?он жн итак есть,так как любой из обьектов можно преобразовать к базовому классу.
|
|||
13
Garykom
гуру
20.06.18
✎
22:31
|
(12) ТС просто принципы ООП не совсем понял и подумал что ими можно составные объекты описывать, без дополнительных полей.
|
|||
14
Сияющий в темноте
20.06.18
✎
22:39
|
Он,видимо,хочет рсзбить область на примитивы,то есть получить возможность создания сложных областей
и в ооп это тоже можно создать еще один обьект,содержащий коллекцию примитивов,но нужно будет переопределять для коллекции функцию вычисления прощади,опять же,можно рассматривать и сложные коллекции |
|||
15
Сияющий в темноте
20.06.18
✎
22:41
|
коллекция,например,может состоять из круга с исключенным из него треугольником
например,так работают регионы в windows |
|||
16
Garykom
гуру
20.06.18
✎
22:50
|
Угу похоже на какой то графический редактор планов чего то.
Примитивами рисует добавляя и получает единый объект для которого считается общая площадь. |
|||
17
alexandr_87
23.06.18
✎
12:42
|
Вы правы,из примитивных фигур будут создаваться сложные как один новый объект.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |