javaSE复习之——设计模式_简单工厂与工厂方法模式
简单工厂模式概述
它又叫静态工厂方法模式,它定义一个具体的工厂类覅则创建一些类的实列
优点
客户端不需要在负责对象的创建,从而明确了各个类的职责
缺点
这个静态工厂类负责所有对象的创建,如果有新的对象添加,或者某些对象创建方式不同,就需要不断修改工厂,不利于后期维护
工厂方法模式概述
工厂方法模式中,抽象工厂类类负责定义创建对象的接口,具体对象的创建工作由继承抽象工厂的具体类实现
优点
客户端不需要再负责对象的创建,从而明确了各个类的职责,如果由新的对象增加,只需要增加一个具体的类和工厂即可,不影响已有的代码,增强了系统的维护性
缺点
需要额外写代码,增加了工作量
代码示例
1 | DogFactory df = new DogFactory(); |
示例继承体系
- Factory工厂接口
定义抽象方法createAnimal()
- DogFactory
重写方法createAnimal(),创建dog对象
- CatFactory
重写方法createAnimal(),创建cat对象
- DogFactory
- Animal
- dog
- cat