|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
27.09.2015, 20:25 | #1 |
Форумчанин
Регистрация: 29.06.2013
Сообщений: 132
|
Ключевое слово base
Какую роль играет ключевое слово base ?
В книге Эндрю Троелсена имеется в приложение такой момент: Код:
Код:
В конструкторах base применяется, что б изначально вызвать конструктор базового класса, а тут что? Последний раз редактировалось Stilet; 27.09.2015 в 20:31. |
27.09.2015, 20:32 | #2 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
27.09.2015, 23:54 | #3 |
Форумчанин
Регистрация: 29.06.2013
Сообщений: 132
|
Т.е. можно его и не вызыватЬ? Как я понял, в данном случает его вызывают, чтоб не дублировать код вызываемого метода. На выходе будет переопределённый метод в котором будет то, что вызвали + то что ещё добавлено ниже base.ИМЯ ВЫЗЫВАЕМОГО МЕТОДА.
Я верно понимаю? |
28.09.2015, 06:49 | #4 | |||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Цитата:
Цитата:
Шарпей ничего никуда добавлять не будет.
I'm learning to live...
|
|||
29.09.2015, 01:51 | #5 | |
Форумчанин
Регистрация: 15.11.2008
Сообщений: 577
|
Цитата:
фыдвлаофдвыа (лимит) Последний раз редактировалось Stilet; 29.09.2015 в 06:34. |
|
30.09.2015, 00:21 | #6 |
Форумчанин
Регистрация: 29.06.2013
Сообщений: 132
|
Так а какой резон его вызывать, если виртуальный класс на то он и виртуальный, как я понял, чтоб его переопределить... Смысл его вызывать в потомке?
|
30.09.2015, 07:36 | #7 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
когда вам нужно все то что делает метод-предка и еще свое. 2)чтоб вызвать код предка в случае если у него доступа больше. ну и иногда вам код предка тупо не известен. переопределение не всегда значит полная замена. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
30.09.2015, 07:55 | #8 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,886
|
Не в смысле дело. А в задаче и её реализации - если задача такова, что Вы её реализуете через иерархию объектов с переопределяемой логикой, то при частичном переопределении - вызывать родительский метод надо (соответственно думать о грамотном разделении кода меж ними), если переопределяемая логика у потомка целиком своя, то не вызываете.
Вам самому это решать. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ключевое слово this | ryouzaki | Помощь студентам | 1 | 14.02.2014 03:41 |
Ключевое слово synchronized и многопоточность | pufystyj | Общие вопросы по Java, Java SE, Kotlin | 2 | 16.05.2013 23:24 |
Ключевое слово в с++ | Юлия Набиева | Помощь студентам | 3 | 12.03.2013 14:36 |
MSVC++: ключевое слово operator | Пепел Феникса | Общие вопросы C/C++ | 2 | 20.10.2009 21:32 |