引出工厂模式的设计问题
◆ 1.为了提高内聚(Cohesion)和松耦合(Coupling),我们经常会抽象出一些类的公共接口以形成抽象基类或者接口。这样我们可以通过声明一个指向基类的指针来指向实际的子类实现,达到了多态的目的。这里很容易出现的一个问题 n 多的子类继承自抽象基类,我们不得不在每次要用到子类的地方编写诸如 new ×××;的代码。这里带来两个问题:
客户程序员必须知道实际子类的名称(当系统复杂后,命名将是一个很不好处理的问题,为了处理可能的名字冲突,有的命名可能并不是
最近在学习设计模式,结合了一下其它博客的观点,按照了自己的理解与实现,将自己的想法表达出来,以比较简单的易懂的方式写出来,作为自己学习的输出,内容不是十分全面,希望帮助你们通过这里快速了解大概的思想,之后再做进一步学习。
本文分为三部分:
简单工厂模式;
工厂方法模式;
抽象工厂模式
一、简单工厂模式
在介绍简单工厂模式之前,先来假设一下:
我们作为顾客,我们需要得到书这样一个物品。
于是,我们写出以下代码:
public interface Book {
public void ty