主讲:李建忠
来源:http://www.microsoft.com/china/msdn/events/webcasts/shared/webcast/consyscourse/CsharpOOD.aspx
Car&CarFactoryabstract class Car { public abstract void Startup(); public abstract void Run(); public abstract void Turn(Direction direction); public abstract void Stop(); } abstract class CarFactory { public abstract Car CreateCar(); }
CarTestFrameworkclass CarTestFramework { public void BuildTestContext(CarFactory carFactory) { Car car=carFactory.CreateCar(); } public void DoTest(Car car) { } public TestData GetTestData(Car car) { } }
HongqiCar&HongqiCarFactorypublic class HongqiCar:Car { public void Startup() { } public void Run() { } public void Turn(Direction direction) { } public void Stop() { } } class HongqiCarFactory:CarFactory { public Car CreateCar() { return new HongqiCar(); } }
Clientclass App { public static void Main() { CarTestFramework carTestFramework=new CarTestFramework (); carTestFramework .BuildTestContext(new HongqiCarFactory()); } }
转载于:https://www.cnblogs.com/6DAN_HUST/archive/2011/05/31/2064728.html