c#关于接口增加新方法问题
static voic Main()
{
Console.WriteLine("Plesas select printer:");
string printerName = Console.Readline();
IPrint printer = null;
if(printerName == "HP")
{
printer = new HPPrinter();
}
else if(printerName == "IBM")
{
printer = new IBMPrinter();
}
printer.PrintPreview();
printer.Print();
}
--------------
public class HPPrint : IPrint
{
public void PrintPreview()
{
Console.WriteLine("this is HP Printer");
}
public void Print()
{
Console.WriteLine("this is HP Printer");
}
}
public class IBMPrint : IPrint
{
public void PrintPreview()
{
Console.WriteLine("this is IBM Printer");
}
public void Print()
{
Console.WriteLine("this is IBM Printer");
}
}
好上面代码不错了,但有一天突然需要加一个方法 size() 设置打印大小,正常想法是给接口增加一个方法,子类也去实现它。但如是子类数量很多时,这将是一个苦逼的工作。我想问一下如何处理这种情况,让增加新方法更容易,不用涉及其它子类。