![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Скрыть метод в наследнике [D6, 95/98, ME, 2000, XP]
SergP © (2005-12-14 04:15:00)допустим:
type A=class(B)
в классе B есть конструктор в public - секции.
Как его скрыть в наследнике (A), то есть перевести в private?
SergP. (2005-12-14 10:31:00) [1]
>
> 2) Задаться вопросом "А оно это надо?" и перекрыть Create
> вместо использования " конструктора, с именем отличным от
> Сreate"
Так и сделаю... Просто писал ночью и спать сильно хотелось, поэтому и напридумывал всякой фигни...
К тому же нашел уже в коде несколько ошибок, которые ночью не заметил...
ЮЮ (2005-12-14 09:57:00) [2]>а унаследованный create теперь не должен использоваться
1) в перекрытом Create высывать исключение - пусть помучаются те, кто привык к стандартеому имени коеструктора.
2) Задаться вопросом "А оно это надо?" и перекрыть Create вместо использования " конструктора, с именем отличным от Сreate"
evvcom (2005-12-14 09:54:00) [3]
> а унаследованный create теперь не должен использоваться
так перекрой его, и в нем возбуди исключение с соответствующим текстом.
SergP (2005-12-14 09:37:00) [4]
> Anatoly Podgoretsky © (14.12.05 08:53) [2]
> SergP © (14.12.05 04:15)
> Почему ты его хочешь скрыть, что то не так.
Да нет. Просто интересуюсь. Особой необходимости нет.
Вобщем в наследнике написан другой конструктор (с именем отличным от create (надеюсь так не запрещается делать)), а унаследованный create теперь не должен использоваться. и этот мой класс сделан в виде отдельного модуля, который возможно придется использовать в разных программах.
Anatoly Podgoretsky (2005-12-14 08:53:00) [5]SergP © (14.12.05 04:15)
Почему ты его хочешь скрыть, что то не так.
Юрий Зотов (2005-12-14 05:37:00) [6]Никак. В объектной модели Delphi нельзя понизить видимость членов класса.
Но метод предка можно перекрыть. В том числе, и конструктор. Даже если он статический.