|
12 / 12 / 0
Регистрация: 29.09.2010
Сообщений: 66
|
|
Иерархия классов22.02.2018, 13:29. Показов 1609. Ответов 5
В некоторой задаче рассматриваются транспортные средства, у которых есть их скорость перемещения и стоимость часа работы(целые поля класса). Транспортными средствами могут быть грузовики(добавляется поле вместимости кузова и методы работы с ним с учетом вместимости) и тракторы(добавляется поле вместимости ковшом и методы работы). Все значения полей задаются под конкретный экземпляр ТС в конструкторе при создании класса.
Вопрос: как возможно реализовать мутанта с ковшом и кузовом одновременно? Я смотрел было на интерфейсы, но там поля являются константами, а методы абстрактны. В моем случае без разницы к чему ковш(кузов) прикручен, его методы всегда одинаковы и используют только параметр вместимости ковша(кузова). Мне реализовывать интерфейс и в каждый класс-мутант копипастить одну и ту же реализацию методов?
0
|
|
| 22.02.2018, 13:29 | |
|
Ответы с готовыми решениями:
5
Иерархия классов Иерархия классов Иерархия классов |
|
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
|
|
| 22.02.2018, 14:53 | |
|
0
|
|
|
12 / 12 / 0
Регистрация: 29.09.2010
Сообщений: 66
|
|
| 22.02.2018, 15:21 [ТС] | |
|
Задача моя. Возможно я ее неверно описал. Трактор-наследник ТС с функционалом ковша - вещь довольно очевидная. Как и грузовик с функционалом кузова. Но предполагаются еще куча других ТС, я просто упростил условие, чтобы не уходить от сути, в частности описанные мутанты.
Так как в java наследование от нескольких классов невозможно, возникает вопрос, как описать отдельно функционал ковша и кузова, чтобы их оба с уже реализованными заранее методами можно было прикрутить к различным ТС-мутантам(помимо ковша с кузовом есть еще много чего, так что вариантов мутантов тоже дофига), не реализуя абстрактные методы интерфейсов снова и снова одним и тем же кодом в каждом из классов-мутантов.
0
|
|
|
85 / 67 / 25
Регистрация: 09.10.2017
Сообщений: 208
|
|
| 22.02.2018, 16:11 | |
Сообщение было отмечено Itisme как решение
Решение
Здравствуйте!
В транспортном средстве написать поле "Инструмент" типа Инструмент (создавать, например, на фабрике различные инструменты - ковш, кузов и т.д.) В тракторе-наследнике тс в метод передавать конкретный инструмент типа Инструмент
1
|
|
|
12 / 12 / 0
Регистрация: 29.09.2010
Сообщений: 66
|
|
| 24.02.2018, 10:54 [ТС] | |
|
Предполагается, что у ТС может быть несколько разных инструментов. Но в целом мысль ясна. Спасибо!
0
|
|
|
2738 / 2047 / 507
Регистрация: 17.02.2014
Сообщений: 9,465
|
|
| 01.03.2018, 14:45 | |
|
Itisme, без интерфейсов или абстрактных классов, как ты будешь считать доход от этих тс?
0
|
|
| 01.03.2018, 14:45 | |
|
Помогаю со студенческими работами здесь
6
Иерархия классов Java иерархия классов Простая иерархия классов Не получается разобраться с задачей иерархия приборов Иерархия классов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes.
А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения
развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам
Кирхгофа, решает её и находит:
токи, напряжения и их 1 и 2 производные при t = 0;. . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
|
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|