Я хотел бы знать, есть ли способ иметь диспетчер ClassClass, который вызывает конструкторы разных классов, которые используют один и тот же интерфейс и наследуют форму того же базового класса. Я не могу сам вызвать конструкторы определенных производных классов, потому что пользователь может выбирать, какие объекты создавать во время выполнения, поэтому я не знаю, какие производные объекты создаются до выполнения.Вызов конструкторов разных классов, которые реализуют один и тот же интерфейс и выводятся из одной базы?
Например:
public class managerClass : ISomeInterface
{
public BaseClass apply(someDataType) //(Notice return type is BaseClass)
{
пробега конструкторов derivedClasses или создавать принципиально новые производные объекты, проходит someDataType в конструкторы
}
}
public class derivedClass : BaseClass, ISomeInterface
{
public void doSmthg(){manipulate data and store}
}
public class derivedClass2 : BaseClass, ISomeInterface
{
public void doSmthg(){manipulate data in another way and store}
}
В настоящее время managerClass не наследующих тот же BaseClass, если это как-то помогает мне делать то, что я хочу делать, я не ага внесите это изменение.
вы хотите, чтобы ваш класс менеджер для создания экземпляров различных конкретных классов, в зависимости от пользовательского ввода? –
Да, это возможно? – user1084113
Посмотрите шаблон абстрактного завода и посмотрите, подходит ли это вашему прецеденту. –