工厂模式分三种:简单工厂.工厂方法.抽象工厂.其中抽象工厂是用于多个产品族的情况.所谓产品族就是不同产品组成的有机整体,各不同产品之间相互依赖.打个比方,一台电脑有CPU.主板.内存和硬盘等,这些不同产品组成了一个产品族.就好比Dell和HP要把这些产品进行不同的组装,这时就需要用到抽象工厂.以下是代码演示: 简单工厂,可以用反射实现: 首先定义产品的抽象接口 package com.demo.SimpleFactory; public interface CPU { public void r…
1. 简单工厂违背OCP(Open Close Principle)原则 , 即对增加开放,对修改关闭.如果要符合OCP原则,要针对接口编程. //简单工厂模式,违反了OCP原则 public class DAOFactory { public static IAddressDao getAddressDao() { return new AddressDao(); } public static IUserDao getUserDao() { return new UserDao(); } }…