1 问题
要创建一组相关或者相互依赖的对象。
2 代码
public class ProductA2 : AbstractProductA{
public override void say(){
Debug.Log("ProductA2");
}
}
public class ProductB1 : AbstractProductB{
public override void say(){
Debug.Log("ProductB1");
}
}
public class ProductB2 : AbstractProductB{
public override void say(){
Debug.Log("ProductB2");
}
}
public abstract class AbstractFactory{
public abstract AbstractProductA createProductA();
public abstract AbstractProductB createProductB();
}
public class ConcreteFactoryA : AbstractFactory{
public override AbstractProductA createProductA(){
return new ProductA1();
}
public override AbstractProductB createProductB(){
return new ProductB1();
}
}
public class ConcreteFactoryB : AbstractFactory{
public override AbstractProductA createProductA(){
return new ProductA2();
}
public override AbstractProductB createProductB(){
return new ProductB2();
}
}
public class AbstactFactoryDemo : MonoBehaviour {
//抽象工厂
void Start(){
AbstractFactory factoryA = new ConcreteFactoryA();
factoryA.createProductA().say();
factoryA.createProductB().say();
AbstractFactory factoryB = new ConcreteFactoryB();
factoryB.createProductA().say();
factoryB.createProductB().say();
}
}
3 总结
没感觉有没感觉有多方便,多高端。。可能因为年轻