以前看过黑皮的设计模式,还有大话设计模式,最近在菜鸟教程想重新复习一遍。看到里面的例子都挺不错,简单明了,对于思路的整理还是有很大帮助和记忆的。代码整理一下在本地跑跑也挺好的。我自己就不说思路了,菜鸟教程挺全的,虽然还要邀请码注册什么的,这个没必要搞,O(∩_∩)O哈哈~。
- 简而言之,工厂模式是创建对象的好方式
- 既然是工厂,那就是模糊化,抽象化,子类实现接口
- 比如要一辆汽车,直接去付钱拿货,汽车怎么造的,汽车组成的零部件不要管,直接付款驾驶就行
- 访问各种数据库,改下驱动,方言,其他不用自己操心
- 多一个产品,多一个对象你继承一下工厂/接口就行了
- 使用场景数据库访问、日子记录器。各种协议的整合抽象共通为一个接口
- 多个产品,就会多一个具体类,就会有相应的开销
- 对象肯定复杂,不复杂对象new一下
首先是菜鸟教程的工厂模式浏览页,大致看看即可。。
一个接口,Shape.java;三个实现接口的实体类,Rectangle.java,Square.java,Circle.java;一个工厂,生成基于给定信息的实体类的对象,ShapeFactory.java;还有一个主类FactoryPatternDemo.java,用于该工厂,通过传递类型信息来获取实体类的对象。
代码链接:设计模式之工厂模式原始版
笔记会提到使用反射机制可以解决每次增加一个产品时,都需要增加一个对象实现工厂的缺点,只需要一个对象实现工厂。所以还会有改进版啦。
代码链接:设计模式之工厂模式用反射机制解决新建产品产生更多对象,这种多个对象缺点的问题改善版本
当然,还是很感谢上面那个网站的,知识勤于复习没毛病,加油!!