169 похожих чатов

Подскажите, можно ли как-то изменить/расширить перечень параметров у наследованного и

переопределённого метода?
Может через интерфейсы можно как-то такое сделать? Может я не туда думаю, тут какой-то паттерн сработает?
Хочется сделать универсальный абстрактный общий класс для функциональности, а в каждой конкретной задаче будет свой класс-наследник и свой перечень параметров.

15 ответов

9 просмотров

Наследуйся и в наследнике херачь нужные методы

Alex- Автор вопроса
Belial
Наследуйся и в наследнике херачь нужные методы

я хочу использовать те же методы, но с другими параметрами

А в чем тогда абстрактность, если нужно знать про конкретные параметры какого-либо метода? Это фактически знание о конечном типе ссылки, какого бы общего типа она не была и следовательно статическая зависимость вызывающей программы от конечной реализации

нет, иначе бы это нарушало ООП

Сергій Netchaev
нет, иначе бы это нарушало ООП

Перегрузки, перегрузки, перегрузочки мои хД

Belial
Перегрузки, перегрузки, перегрузочки мои хД

ну и какое отношение это имеет к ООП? это скорее способ отвязаться от строгой типизации, типа как читерство )

Только через генерик типизацию. В дочерних классах ассигном типизировать

ну ты можешь ввести избыточные параметры в базовом классе, либо создать более специфичные методы в наследнике, который используют базовую или переопределенную функциональность

Денис
Тссс! Не мешай рождению god-object)

первая половина, как раз первый шаг на этом пути

Alex- Автор вопроса
Dmitry B
А в чем тогда абстрактность, если нужно знать про ...

Я тоже не понимаю смысла такой абстракции, что я не могу переопределить список параметров. Единственная догадка, что от такого может поломаться кастование и м.б. ещё что-то.

Сергій Netchaev
первая половина, как раз первый шаг на этом пути

а дальше как повезет: у кого нургл, у кого слаанеш получается 😂

Alex
Я тоже не понимаю смысла такой абстракции, что я н...

В таком случае откажись от параметров совсем. Внутри самого метода обращайся к полям объектов.

Alex
Я тоже не понимаю смысла такой абстракции, что я н...

Перечисление списка параметров в явном виде является прямой зависимостью от конкретного типа. Своеобразный даункаст. Следовательно, никакого абстрагирования. С конструкторами то же самое. Чтобы вызвать конструктор, нужно явно указать конечный тип

Alex
Я тоже не понимаю смысла такой абстракции, что я н...

ну тут все просто - ты не понимаешь что такое абстракция в ООП в принципе

Похожие вопросы

Обсуждают сегодня

Мужики и девушки, привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных...
Kraszx
14
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Я вот подумал. SSE выполняет операции максимум с 64-битной точностью. А FPU - всегда с 80-битной. Разве не должно быть FPU точнее тогда?
The Bird of Hermes
13
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
как быть с принтером? такой подход прокатит?
zamtmn
12
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Я не понимаю, это троллинг или что? Швабрика поддерживают, который буквально пишет на ассемблере взаимодействия с винапи. Я это ещё написал загрузчик и хоть что-то изучаю в о...
Shadow Akira
6
А вот это что за конструкция? Вернее, она тут нафига?
Serjone
10
Товарищи, кто работа с iphelper? Или может я в самой логике ошибки фигачу, не пойму.... var ifTable : PMIB_IFTABLE; size, corSize: DWORD; Buffer ...
Warfarellen
4
Карта сайта