当使用new实例化一个类时,使用的是实现,而不是接口,代码捆绑着具体类会导致代码更脆弱缺乏弹性,使用松耦合的OO模式可以得到解脱。 工厂:封装对象的创建,处理创建对象的细节 静态工厂:利用静态方法定义一个简单的工厂。优点:不需要创建工厂类的实例化。缺点:不能通过继承改变创建方法行为。 简单工厂:简单 ...
分类:
其他好文 时间:
2016-10-22 14:47:24
阅读次数:
197
转载:http://www.cnblogs.com/java-my-life/archive/2012/03/22/2412308.html#3529258 在阎宏博士的《JAVA与模式》一书中开头是这样描述简单工厂模式的:简单工厂模式是类的创建模式,又叫做静态工厂方法(Static Factory ...
分类:
其他好文 时间:
2016-10-20 07:13:02
阅读次数:
250
一、大致结构 1、抽象产品类 2、抽象工厂类 3、具体工厂类 4、具体产品类 5、静态工厂类 二、代码(模拟买东西送东西的场景) 1、抽象产品类 MainProduct.java FreeProduct.java 2、抽象工厂类 AbstractFactory.java 3、具体产品类 Comput ...
分类:
其他好文 时间:
2016-10-14 20:41:14
阅读次数:
123
简介1、简单工厂,或静态工厂,产品接口定义:专门定义一个类来负责创建其他类的实例,被创建的实例通常具有共同的父类或实现同一接口优点:客户端可以直接消费产品,而不必关心具体产品的实现(不关心对象的构造方法是怎么new的),消除了客户端直接创建产品对象的责任,实现了对责任的分割。缺点:工厂类记录了所有产... ...
分类:
其他好文 时间:
2016-10-14 20:41:12
阅读次数:
220
一、大致结构 1、工厂类 2、抽象产品类 3、多个具体的产品类 二、代码 1、抽象产品类Fruit.java 2、具体子类Apple.java和Orangle.java 3、将以上产品实现类放入配置文件 fruitList.properties 4、工具类 FruitList.java 5、静态工厂 ...
分类:
其他好文 时间:
2016-10-14 06:46:46
阅读次数:
217
1.静态工厂方法:一种特殊归纳的类静态方法,用来产生类的一个实例(对象)。 2.不可实例化的类:可以将构造方法的访问权限设为私有,并在构造方法中抛出异常来保证类不能被实例化。 3.final:被final修饰的类不可及被继承,被final修饰的变量就是一个常量,只能赋值一次。 4. ...
分类:
其他好文 时间:
2016-10-13 21:36:45
阅读次数:
113
简单工厂模式 简单工厂模式又叫静态工厂方法模式,通过产品接口、具体产品类和工厂类实现。客户端(使用具体产品类的类)不需要知道产品类的详细信息,只需要知道产品类的对应参数,通过调用工厂类的静态方法来创建对象。 解决的问题 简单工厂模式、工厂方法模式和抽象工厂模式是工厂模式的三种实现,工厂模式将对象创建 ...
分类:
其他好文 时间:
2016-10-08 13:26:43
阅读次数:
140
spring day01回顾 编写流程(基于xml) 1.导入jar包:4+1 --> beans/core/context/expression | commons-logging 2.编写目标类:dao和service 3.spring配置文件 IoC: DI: 实例化方式: 默认构造 静态工厂... ...
分类:
编程语言 时间:
2016-10-04 21:07:33
阅读次数:
452
http://www.cnblogs.com/likebeta/archive/2013/04/01/2993328.html 简单工厂模式,又称为静态工厂方法模式 工厂方法模式,又称为多态工厂模式 抽象工厂模式,=工具箱模式 简单工厂模式, 三个角色: ...
分类:
其他好文 时间:
2016-09-19 13:08:00
阅读次数:
137
一、考虑用静态工厂方法代替构造器 这里的静态工厂方法是指类中使用public static 修饰的方法,和设计模式的工厂方法模式没有任何关系。相对于使用共有的构造器来创建对象,静态工厂方法有几大优势: 1、静态工厂方法有名称:通过有意义的静态工厂方法名称可以很好的表达工厂方法的作用,易于区别功能相似 ...
分类:
编程语言 时间:
2016-09-16 20:56:42
阅读次数:
170