生产线(型号A)———〉生产汽车(型号A)———〉测试汽车(型号A)
要求:当更换生产线时对程序的改动要尽可能的少
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string NO;
NO = Console.ReadLine();
try
{
Produce(NO).MakeCar();
Produce(NO).TestCar();
}
catch (NullReferenceException e)
{
Console.WriteLine(e.Message);
}
}
static IProductLine Produce(string No)
{
if (No == "2000")
{
return new Car_2000();
}
else if (No == "3000")
{
return new Car_3000();
}
else
{
Console.WriteLine("你输入的型号不正确!");
return null;
}
}
}
interface IProductLine
{
void MakeCar();
void TestCar();
}
class Car_2000 : IProductLine
{
public void MakeCar()
{
Console.WriteLine("make car 2000");
}
public void TestCar()
{
Console.WriteLine("test car 2000");
}
}
class Car_3000 : IProductLine
{
public void MakeCar()
{
Console.WriteLine("make car 3000");
}
public void TestCar()
{
Console.WriteLine("test car 3000");
}
}
}
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string NO;
NO = Console.ReadLine();
try
{
Produce(NO).MakeCar();
Produce(NO).TestCar();
}
catch (NullReferenceException e)
{
Console.WriteLine(e.Message);
}
}
static IProductLine Produce(string No)
{
if (No == "2000")
{
return new Car_2000();
}
else if (No == "3000")
{
return new Car_3000();
}
else
{
Console.WriteLine("你输入的型号不正确!");
return null;
}
}
}
interface IProductLine
{
void MakeCar();
void TestCar();
}
class Car_2000 : IProductLine
{
public void MakeCar()
{
Console.WriteLine("make car 2000");
}
public void TestCar()
{
Console.WriteLine("test car 2000");
}
}
class Car_3000 : IProductLine
{
public void MakeCar()
{
Console.WriteLine("make car 3000");
}
public void TestCar()
{
Console.WriteLine("test car 3000");
}
}
}