1
public class ConcreteService1: IService1
{
private IService2 _service2;
public void doSomething()
{
_service2 = new ConcreteService2();
.....
}
}
public class ConcreateService2: IService2
{
private IService1 _service1;
public void doSomething()
{
_service1 = new ConcreteService1();
.....
}
}
这是工厂或抽象工厂可以在这里使用的情况。如果是的话,请你举个例子。对象创建工厂模式
感谢您的回答。真的帮助了我。只是一个相关的问题是,我经历了很多抽象工厂的例子,并观察到几乎所有例子中的AbstractFactory都比ConcreteFactories更多的实现。在我的情况下,我没有看到更多的一个具体的工厂模式,它会是抽象工厂模式的正确实现。 – user2045038
这取决于现在可能是一种情况,但在后期如果您引入新接口,则可以由抽象工厂轻松处理。我想你会有两个具体的工厂现在为IService1和其他Iservice2两个完全独立 –
我仍然无法理解为什么在这种情况下,我需要创建两个具体的工厂。作为一个可以做这样的工作:public class ConcreateServiceFactory:IAbstractInterfaceFactory {public IService1 InitializeService1(){....} public IService2 InitializeService2(){...}}你能解释一下吗? – user2045038