Если расширять нечего, кроме установки какого-то определенного состояния, которое уже находится в «master», то звучит так, будто вам вообще не нужно наследование и, возможно, вместо этого вам нужно контролировать, как экземпляры вашего «master» класса построены.
Вместо этого вы можете использовать фабричный шаблон.
Однако, если вы меняете поведение, тогда определенно использование abstract
гарантировано!