工厂方法模式,是一个用处不太多的设计模式。
将一个类,对另一个类的直接引用。通过工厂修改成间接引用。
这样做的好处在于,将对象创建延迟。这个延迟就可以屏蔽了变化,同时为扩展性留下了基础
代码如下:
使用代码:
static void Main(string[] args)
{
///直接使用
IHero tryndamere = new Tryndamere();
tryndamere.Show();
/// 工厂方法的使用(代码更多了,类也增加了,好处是,对象的使用耦合被屏蔽,对象创建被延迟,可以在工厂里增加一定的扩展性)
TryndamereFactory tryndamereFactory = new TryndamereFactory();
IHero tryndamere1 = tryndamereFactory.GetInstance();
tryndamere1.Show();
Console.ReadLine();
}
工厂:
public class TryndamereFactory
{
public IHero GetInstance()
{
Console.WriteLine("Tryndamere,被创建");
return new Tryndamere();
}
}
对象代码:
public class Tryndamere:IHero
{
public void Show()
{
Console.WriteLine("开闭原则、对扩展开放、对修改封闭");
}
}
接口:
public interface IHero
{
void Show();
}