public Client(AbstractFactory factory)
 {
     AbstractProductA = factory.CreateProductA();
     AbstractProductB = factory.CreateProductB();
 }
 public override void Interact(AbstractProductB b)
 {
     Console.WriteLine(this.GetType().Name + "interact with " + b.GetType().Name);
 }
 public abstract void Interact(AbstractProductB b);