30 / 11 / 5
Регистрация: 01.03.2014
Сообщений: 379
|
||||||
1 | ||||||
Переопределение equals14.01.2016, 15:21. Показов 5286. Ответов 16
Метки нет (Все метки)
Добрый день, товарищи.
Пытаюсь переопределить метод "equals" во вновь созданном классе.
private String Motion и private String Fuel. Как можно исправить метод equals()?
0
|
14.01.2016, 15:21 | |
Ответы с готовыми решениями:
16
Переопределение метода equals Переопределение метода equals Переопределение equals, сравнение по id HashCode и equals (переопределение) |
65 / 64 / 15
Регистрация: 15.12.2013
Сообщений: 166
|
||||||
14.01.2016, 15:31 | 2 | |||||
holod2014, кто мешает повтыкать еще условий?
0
|
0 / 0 / 0
Регистрация: 14.01.2016
Сообщений: 1
|
||||||
14.01.2016, 15:37 | 3 | |||||
0
|
Pablito
|
14.01.2016, 15:42
#4
|
Не по теме: ну тогда уже первой проверкой на null, а остальные !=null убрать ) логично?
0
|
30 / 11 / 5
Регистрация: 01.03.2014
Сообщений: 379
|
||||||
14.01.2016, 16:26 [ТС] | 5 | |||||
Эрнесто, когда добавляю условия, то
0
|
Модератор
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
|
||||||
14.01.2016, 17:16 | 6 | |||||
1
|
30 / 11 / 5
Регистрация: 01.03.2014
Сообщений: 379
|
||||||
14.01.2016, 18:01 [ТС] | 7 | |||||
easybudda, Толь лыжи не едут, толь я не догоняю
могу сбросить весь проект, если что-то в коде не ясно
0
|
Модератор
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
|
|
14.01.2016, 18:13 | 8 |
1
|
944 / 687 / 230
Регистрация: 28.04.2013
Сообщений: 1,926
|
||||||
14.01.2016, 18:18 | 9 | |||||
holod2014, а что вам не нравится?
easybudda, а если так?
1
|
Модератор
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
|
|
14.01.2016, 18:26 | 10 |
reisal78, а нефига поля класса неинициализированными оставлять!
есть же значения по умолчанию. По хорошему в конструкторе проверять null там или строка какая-то...
1
|
30 / 11 / 5
Регистрация: 01.03.2014
Сообщений: 379
|
||||||
14.01.2016, 18:28 [ТС] | 11 | |||||
Задание:
Создать приложение, удовлетворяющее требованиям, приведенным ниже. Корректно переопределить для каждого класса методы equals(), hashCode(), toString(). Создать объект класса Автомобиль, используя класс Колесо. Методы: ехать, заправляться, менять колесо, вывести на консоль марку автомобиля. Реализация:
0
|
944 / 687 / 230
Регистрация: 28.04.2013
Сообщений: 1,926
|
||||||
14.01.2016, 18:34 | 12 | |||||
easybudda,
А почему так не хотите сделать?
holod2014, код который вы указали в сообщении Переопределение equals выводит true. Что еще не так то? )
1
|
30 / 11 / 5
Регистрация: 01.03.2014
Сообщений: 379
|
|
14.01.2016, 18:39 [ТС] | 13 |
Народ, не пинайте сильно. Что-то глюкануло меня. Код действительно рабочий!
Всем спасибо за помощь.
0
|
944 / 687 / 230
Регистрация: 28.04.2013
Сообщений: 1,926
|
|
14.01.2016, 18:44 | 14 |
0
|
30 / 11 / 5
Регистрация: 01.03.2014
Сообщений: 379
|
|
14.01.2016, 19:02 [ТС] | 15 |
а где ошибки?
0
|
944 / 687 / 230
Регистрация: 28.04.2013
Сообщений: 1,926
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
14.01.2016, 22:16 | 16 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Сообщение было отмечено holod2014 как решение
Решение
holod2014, по методу equals - посмотрите наши сообщения с easybudda. В данном случае, ваш код работает, но в общих случаях могут вываливаться эксцепшены.
Ну и в целом это задача по ООП, а в вашем решении его нет =) Сегодня нас просят сделать автомобиль с колесами. Если правильно использовать приемы ООП, то такая модернизация, не доставит нам особых проблем. Колеса, гусеницы, ноги... Это часть чего то, участвующая в процессе перемещения. Что бы это процесс перемещения начался эта часть должна начать выполняться какое то действие (action).
Сейчас от нас требуют создать автомобиль, завтра потребуют мотоцикл, а после завтра - трактор? Опять попробуем выделить общее. любое транспортное средство имеет название, вес, цвет и тд. любое транспортное средство должно иметь как минимум одно устройство для перемещения (колесо, гусеница и тд.) для перемещения должен быть двигатель для работы двигателя нужна энергия энергию надо где то хранить (для последних 3х пунктов вспомнить о велосипедистах) так как в задаче ничего не сказано о двигателе, а мне лень особо сильно заморачиваться, то оставим его реализацию на самостоятельную работу. А вот для реализации метода "заправить" придется сделать хотя бы интерфейс хранилища топлива. Любое хранилище можно заполнить. и получить из него, то что в нем хранится. (Топливный бак, аккумулятор и тд)
public static void main(String[] args) {
нам нужно будет создать класс их описывающий.
Теперь потребовалось создать мотоцикл.
Тоже самое можно делать и с тракторами и с велосипедами.. да хоть с чертом в ступе =) ну а дальше сами... мне лень стало )
10
|
30 / 11 / 5
Регистрация: 01.03.2014
Сообщений: 379
|
|
15.01.2016, 11:43 [ТС] | 17 |
reisal78, прочитав данный пост действительно стало всё понятно.
Побольше бы таких статей в интернете, которые написаны не на академическом языке, а на понятном широкой массе. Спасибо!!!
0
|
15.01.2016, 11:43 | |
15.01.2016, 11:43 | |
Помогаю со студенческими работами здесь
17
Переопределение equals() и hashCode() Переопределение методов equals() и hashCode() Переопределение методов hashcode, compare, equals в коллекциях Переопределение equals в классах, содержащих объекты друг друга Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |