88 / 86 / 55
Регистрация: 14.11.2015
Сообщений: 1,099
|
||||||
1 | ||||||
Object object = new B()17.03.2017, 19:24. Показов 1264. Ответов 10
Метки нет (Все метки)
Объясните кто-нибудь, почему в этом коде компилятор не находит метод m2 в классе B. Что я неправильно понимаю?
0
|
17.03.2017, 19:24 | |
Ответы с готовыми решениями:
10
Какая разница между Object a; и Object a=null; Object Связь с Object Object и массивы. |
64 / 64 / 26
Регистрация: 07.01.2016
Сообщений: 374
|
|||||||||||
17.03.2017, 19:32 | 2 | ||||||||||
0
|
88 / 86 / 55
Регистрация: 14.11.2015
Сообщений: 1,099
|
|
17.03.2017, 19:35 [ТС] | 3 |
Я понимаю, что так будет работать. Мне непонятно, почему не работает в моем случае.
0
|
2398 / 2223 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
|
|
17.03.2017, 19:38 | 4 |
Artmal, потому что у класса Object нет метода m2
1
|
88 / 86 / 55
Регистрация: 14.11.2015
Сообщений: 1,099
|
||||||
17.03.2017, 21:08 [ТС] | 5 | |||||
KEKCoGEN, объясните, пожалуйста, логику такой конструкции, потому что я чего-то не понимаю. Почему компилятору сразу не ставить ошибку компиляции, например несоотвеотствующие типы Object и B. Какой толк от
0
|
88 / 86 / 55
Регистрация: 14.11.2015
Сообщений: 1,099
|
||||||
17.03.2017, 21:15 [ТС] | 7 | |||||
Welemir1, так а толк от инициализации переменной типа Object каким-то другим типом какой? Если мне ничего недоступно с класса B, я могу писать просто
0
|
2398 / 2223 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
|
|
17.03.2017, 21:24 | 8 |
нет никакого толка. Читайте про полиморфизм.
Потому что тут нет никакой ошибки. С чего компилятору говорить что она есть Непонятно каким образом вы дошли до изучения спринга если незнаете элементарных вещей.
0
|
64 / 64 / 26
Регистрация: 07.01.2016
Сообщений: 374
|
|
17.03.2017, 21:54 | 9 |
Artmal, а зачем вам переменная типа Object?
0
|
88 / 86 / 55
Регистрация: 14.11.2015
Сообщений: 1,099
|
|
17.03.2017, 22:29 [ТС] | 10 |
DavidKarchikyan, на собеседование вопрос был, вызовется ли нормально метод из B.
0
|
64 / 64 / 26
Регистрация: 07.01.2016
Сообщений: 374
|
|
17.03.2017, 22:39 | 11 |
Сообщение было отмечено Artmal как решение
Решение
Artmal,
мне тоже интересно, а как? Добавлено через 6 минут Но попробую объяснить Есть три класса. 1. Существо (Object) (которое умеет только дышать) 2. Животное (A) (которое умеет только ходить) + наследуется от Существа, значит умеет и дышать. 3. Кошка (B) (которая умеет только мяукать) + наследуется от Животного, значит умеет и ходить + наследуется от Существа, значит умеет и дышать. Теперь если ты создашь объект Существо (Object) Object a = new Object(), то оно может только дышать, и разницы нет ты создал существо от Животного Object a = new А() или от Кошки Object a = new В()
1
|
17.03.2017, 22:39 | |
17.03.2017, 22:39 | |
Помогаю со студенческими работами здесь
11
Class и Object Устройство Object.clone() applet and tag object Коллекция HashMap из Object Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |