一、一些重要概念
1、与简单工厂的区别
简单工厂:创建对象都在工厂类里面(实例化过程)
工厂方法:把工厂的职能移交到子类(实例化过程)
2、什么时候用抽象类,什么时候用接口?
当类中有些方法是已知的,有些是未知的,那这时就用抽象类,如果都是未知的那就用接口。
如何理解已知和未知?
要不要分离开来,通过其他类来实现
3、产品等级与产品族的概念怎么区分?
产品等级:同一类产品,不同的厂家。如,海尔冰箱,美的冰箱
产品族:同一个厂家,不同的产品。如,海尔冰箱,海尔空调
4、工厂方法抽象类:只是规定契约,不负责实现哪个子类,契约如何理解?
5、父类申明的引用,通过子类来实现,怎么理解?
子类继承父类,通过父类来申明类型,通过new(“子类”)来实现。
6、父类申明的引用,通过子类来实现,怎么理解?
7、产品,具体的产品;工厂,具体的工厂
二、工厂方法
定义与类型
使用场景
优缺点