思路源泉来自这类原文:Java开发中的23种设计模式详解(转)
有些人看了这篇可能只是转载或者收藏,对我来说就是写,练习,要有自己的理解。
看完保证你了解了主干,并会用格式。
本文以问题来驱动,以UML图来理解设计模式
1、工厂方法模式
分三种。
先直接看下面这个先。
1-1、普通工厂模式
description:
说白了在代码体现就是建立一个工厂,然后里面有个生产方法创建实现同一个接口的对应的实现类对象。
exercises:
设计一个发送接口(Sender),有send()方法。
有两个实现类发送邮件(EmailSender)和发送短信(MessgeSender)类,
建立工厂,工厂里有一个方法produce方法,形式public Sender produce(String type){}
该方法要求:如果是EmailSender类型则new该类对象,如果是MessgeSender类则new该类对象,
方法返回传入参数对应类型对象。
FactoryTest测试使用。
UML diagram:
an possible answer(source):
1-2:多个工厂方法模式
description:
在上述模式中改进,不再使用单独一个方法。有问题:如果传递的字符串有问题,则不能正确创建对象
所以,把