У меня есть куча классов, которые я пытаюсь реорганизовать и абстрагировать их общие переменные-члены и методы.
Один метод, который я вижу в каждом классе, — это метод с именем MethodFoo(). Этот метод имеет общее тело, но каждый класс добавил к нему что-то БОЛЬШЕ... так, например, для одного класса это выглядит так:
private method MethodFoo()
{
// common stuff ...// wow! a Goto Statement ..seriously! //1
**// NON-common stuff just for the method of this class** //2
Goto: // bunch of COMMON stuff again //3
}
так что шаблон, как всегда, части 1 и 3 одинаковы для этого метода в разных классах, НО то, что отличается для него в каждом классе, - это часть 2 ... и также не забывайте об этом уродливом операторе goto :)
Итак, имея в виду эту картинку, как вы думаете, есть ли способ поместить часть этого в мой абстрактный класс?