Гость
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / вызов метода базового класса после выполнения конструктора класса наследника / 5 сообщений из 5, страница 1 из 1
27.07.2015, 12:40
    #39016620
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызов метода базового класса после выполнения конструктора класса наследника
Понимаю, вопрос глупы, на сколько мне известно, сделать это нельзя, но может я тупой и чего то не знаю :)

есть базовый класс, есть его наследние

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
abstract class BaseClass
{
	public BaseClass()
	{
		//TODO
	}
	public void Foo()
	{
	}
}

sealed class ChildClass : BaseClass
{
	public ChildClass : base()
	{
		//TODO
	}
}


Сперва выполняется базовый конструктор, потом конструктор наследника.
как то можно в базовом классе определить, что после выполнения конструктора класса наследника (ChildClass), началось выполнение метода Foo, без лишней возни в классе наследника?
...
Рейтинг: 0 / 0
27.07.2015, 15:49
    #39016913
Нахлобуч
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызов метода базового класса после выполнения конструктора класса наследника
X-Y Problem.

Какую задачу нужно решить?
...
Рейтинг: 0 / 0
27.07.2015, 21:40
    #39017153
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызов метода базового класса после выполнения конструктора класса наследника
НахлобучX-Y Problem.

Какую задачу нужно решить?
да любую.
Просто часть инициализации в классе происходит в базовом конструкторе, затем в конструкторе наследника, а затем нужно снова продолжить инициализацию из базового класса и вот тут жопа. Конечно, можно просто сделать в базовом классе метод и вызывать его в конструкторе наследника и типа всё будет окей. Но нужно это еще не забывать делать )
вот и стало интересно, но как я понял, через конструкторы это сделать невозможно
...
Рейтинг: 0 / 0
27.07.2015, 22:09
    #39017166
buser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызов метода базового класса после выполнения конструктора класса наследника
Roman Mejtes, описанные симптомы - просчет в дизайне... не нужно в конструктор засовывать столько хитрожопой логики, да еще с определенной последовательностью...
через опу сделайте в базовом классе протектед абстракт воид и определяйте его в наследнике, а в конструкторе базового класса воткните его в нужное место... или конструктор принимающий акшен... хотя накуя он... Уж лучше сделать метод - инициализатор...
А вообще, по феншую... у GoF... нужно посмотреть на такой паттерн-маттерн как Builder

Ну или дождаться, когда Нахлобуч проснется :)
...
Рейтинг: 0 / 0
28.07.2015, 04:09
    #39017259
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызов метода базового класса после выполнения конструктора класса наследника
buserчерез опу сделайте в базовом классе протектед абстракт воид и определяйте его в наследнике, а в конструкторе базового класса воткните его в нужное место...
йяду выпейте.
а лучше об стену
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / вызов метода базового класса после выполнения конструктора класса наследника / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]