- 浏览: 1499452 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (798)
- struts2 (42)
- servlet (20)
- quartz (4)
- jquery & ajax (24)
- tomcat (5)
- javascript (15)
- struts1 (8)
- 搜索关键字及链接 (3)
- fckeditor (3)
- Apache (5)
- spring (22)
- linux (3)
- 企业应用 (8)
- 综合应用 (13)
- 服务器 (2)
- 数据库 (85)
- 性能调优 (21)
- 网络应用 (15)
- 缓存技术 (8)
- 设计模式 (39)
- 面试题 (7)
- 程序人生&前辈程序员 (29)
- java基础 (59)
- hibernate (75)
- log4j (4)
- http (11)
- 架构设计 (28)
- 网页设计 (12)
- java邮件 (4)
- 相关工具 (11)
- ognl (7)
- 工作笔记 (18)
- 知识面扩展 (12)
- oracle异常 (1)
- 正则表达式 (2)
- java异常 (5)
- 项目实践&管理 (1)
- 专业术语 (11)
- 网站参考 (1)
- 论坛话题 (2)
- web应用 (11)
- cxf&webservice (22)
- freemarker (3)
- 开源项目 (9)
- eos (1)
- ibatis (6)
- 自定义标签 (3)
- jsp (3)
- 内部非公开文档(注意:保存为草稿) (0)
- 国内外知名企业 (2)
- 网店 (3)
- 分页 (1)
- 消费者习惯 (2)
- 每日关注 (1)
- 商业信息 (18)
- 关注商业网站 (1)
- 生活常识 (3)
- 新闻 (2)
- xml&JSON (5)
- solaris (1)
- apache.common (3)
- BLOB/CLOB (1)
- lucene (2)
- JMS (14)
- 社会进程 (8)
- SSH扩展 (2)
- 消费心理 (1)
- 珠三角 (1)
- 设计文档 (1)
- XWork&webwork (1)
- 软件工程 (3)
- 数据库及链接 (1)
- RMI (2)
- 国内外知名企业&人物 (1)
最新评论
-
司c马:
简介易懂、
OutputStream和InputStream的区别 -
在世界的中心呼喚愛:
解决我的问题
Java获取客户端的真实IP地址 -
bo_hai:
都是些基本的概念呀!
SSO -
tian_4238:
哥们,你也是搞水利这块的吧。
巧用SQLQuery中的addScalar -
loveEVERYday:
java.util.Date、java.sql.Date、java.sql.Time、java.sql.Timestamp小结
缺点:
1、工厂类成为全能类,一旦不能工作,系统受到影响
2、当产品类有不同的接口种类时,工厂类需要判断什么时候创建某种产品,在将来进行功能扩展时困难。
3、使用静态方法作为工厂方法,而静态方法无法由子类继承,因此,工厂角色无法形成基于继承的等级结构。
后两种在工厂方法模式中得到克服。
这个模式的优点是允许客户端相对独立于产品创建的过程,并且在系统引入新产品的时候无须修改客户端,也就是说,它在某种程度上支持“开-闭”原则。
缺点是对“开-闭”原则的支持不够,因为如果有新的产品加入到系统中去,就需要修改工厂类,将必要的逻辑加入到工厂类中。
工厂模式有简单工厂模式、工厂方法模式、抽象工厂模式。
DateFormat
这里使用静态工厂方法,是为了将具体子类实例化的工作隐藏起来,从而客户端不必考虑如何姜具体子类实例化,因为抽象类DateFormat会提供它的合适的具体子类的实例。
抽象产品
^
|
|
创建 |
工厂 --------> 具体产品
interface
Product
^
|
Creator Creates ConcreteProduct
+factory:Product ------------> +ConcreteProduct
发表评论
-
设计模式系列-适配器模式(&几种模式的链接)
2011-09-02 15:55 2091一、上篇回顾 通过上篇的简单讲解,我们知道了,组 ... -
java回调函数
2011-09-01 16:31 1449所谓回调,就是客户程序C调用服务程序S中的某个方法a,然后S又 ... -
深入浅出java命令模式
2011-08-20 14:39 1140一、引言 忙里偷闲, ... -
Java命令模式:设计模式的四人帮
2011-08-20 11:47 1735本文介绍了一个Java设 ... -
Java命令模式:设计模式的四人帮
2011-08-20 11:07 2本文介绍了一个Java设 ... -
桥接模式
2011-07-14 14:27 3831桥接模式是一种结构型模式,它主要应对的是:由于实际的需要,某个 ... -
Java设计模式圣经连载(03)-抽象工厂模式
2011-07-05 09:18 12561.3 抽象工厂(Abstract F ... -
模板方法设计模式
2011-07-04 22:49 1282Template模板模式定义: ... -
JDK里的设计模式
2011-06-28 16:07 1377下面是JDK中有关23个经典设计模式的示例,在stakeove ... -
UML类图关系全面剖析
2011-06-28 10:38 2089UML的类图关系分为: 关联、聚合/组合、依赖、泛化(继承)。 ... -
设计模式-火龙果
2011-06-22 16:19 1193鸭子-策略模式(Strategy) http://www.u ... -
设计模式之六大原则——单一职责原则(SRP)
2010-10-19 08:48 1953开闭原则(Open Closed Pr ... -
状态模式和策略模式的比较
2010-09-27 19:56 1217状态模式(state pattern)和 ... -
门面模式-《java与模式》
2010-09-26 19:01 14661、医院的例子 病人 ... -
相关知识
2010-09-21 15:14 11381、java设计模式之实例详解http://java.chin ... -
工厂模式-设计模式-笔记(一)
2010-09-09 18:33 1263我们不应该针对实现编程,但是当我每次使用new时,不正是在针对 ... -
装饰者模式-设计模式-笔记(二)
2010-09-08 08:38 1534装饰java.io类: InputStream //抽象组件 ... -
来杯咖啡-装饰者模式(Decorator)
2010-09-07 21:31 1470前言 上篇【观察者模 ... -
观察者模式-设计模式-笔记(一)
2010-09-06 14:53 1112出版者+订阅者==观察者模式 报纸的订阅 出版 ... -
设计模式-笔记(三)
2010-09-06 10:56 1406设计原则: 多用组合,少用继承 以上笔记介绍的是策略 ...
相关推荐
计算机后端-Java-图解java设计模式047 工厂模式-JD.avi
设计模式通常分为三类:创建型模式(如工厂模式、抽象工厂模式、单例模式、建造者模式、原型模式),结构型模式(如适配器模式、装饰器模式、代理模式、桥接模式、组合模式、外观模式、享元模式)以及行为型模式(如...
本资源提供的"简单的工厂模式实现-java"是用Java语言实现的一个基本的工厂模式示例。下面将详细阐述工厂模式的核心概念、结构以及在Java中的应用。 首先,工厂模式遵循“开闭原则”,即对扩展开放,对修改关闭。它...
在Java编程中,简单工厂模式通过一个公共的工厂类来创建对象,这样客户端只需要知道产品类型,而无需了解如何创建这些产品,提高了代码的可维护性和灵活性。 在简单工厂模式中,有三个主要角色: 1. **产品接口或...
在Java编程语言中,工厂模式通常分为简单工厂模式、工厂方法模式和抽象工厂模式三种类型。这些模式都是围绕着一个中心思想:将对象的实例化过程封装起来,使代码更加灵活且易于维护。 1. **简单工厂模式**: 简单...
工厂模式分为三种主要类型:简单工厂模式、普通工厂模式(也称为工厂方法模式)和抽象工厂模式。 1. **简单工厂模式**: - 简单工厂模式中,有一个中心工厂类,它负责根据输入条件(通常是一个参数)来创建具体的...
工厂模式分为三种主要类型:简单工厂模式、工厂方法模式和抽象工厂模式。 1. **简单工厂模式** 简单工厂模式是最简单的工厂模式实现,它提供一个静态方法或者类来创建对象,这个类通常被称为“工厂”。用户只需要...
### Java工厂模式—简单工厂模式 #### 一、引言 简单工厂模式并不是GoF设计模式之一,但它作为设计模式的基础,在实际项目中被广泛使用。简单工厂模式的主要目的是将对象的创建与对象的使用分离,使代码更加灵活,...
这里我们主要探讨基于Java的例子,即简单工厂模式。 简单工厂模式的核心思想是定义一个工厂类,这个类负责创建对象,而客户端代码不再直接创建对象,而是调用工厂类的静态方法来获取所需对象。这样做可以隔离类的...
在"简单工厂模式-计算器"这个例子中,我们看到的是一个基于Java实现的计算器应用,它可能包含了如何运用简单工厂模式来构建一个计算器的实例。在这个场景下,我们可以深入探讨以下几个方面: 1. **简单工厂方法**:...
此外,还可以进一步研究简单工厂、工厂方法和抽象工厂这三种不同类型的工厂模式,了解它们之间的区别和适用场景。设计模式的学习对于提升软件设计能力至关重要,希望这个例子能帮助你在理解工厂模式的道路上更进一步...
工厂模式分为三种主要类型:简单工厂模式、工厂方法模式和抽象工厂模式。 1. **简单工厂模式**: 简单工厂模式有一个中心工厂类,它负责根据输入条件创建具体的对象。这种模式适用于产品种类较少且不会频繁扩展的...
总结来说,"JAVA抽象工厂模式--演示代码"将展示如何在Java中应用这一模式,通过创建和使用抽象工厂,来实现对象族的动态创建,同时保持代码的松耦合和可扩展性。测试用例则会验证这些功能是否按照预期工作。
在Java编程中,简单工厂模式通过一个中心工厂类来负责创建相关的对象,而无需让客户端代码直接new具体的产品类。这种方式提高了代码的可读性和可维护性,降低了系统的耦合度。 首先,我们来看一下简单工厂模式的...
在Java中,我们可以用类和接口来实现抽象工厂模式。 首先,我们定义一个抽象工厂接口,比如`AbstractFactory`,它声明了一系列创建产品的方法,这些产品是相互关联或依赖的。例如: ```java public interface ...
### 设计模式——简单工厂模式解析与应用实例 #### 一、简单工厂模式概述 简单工厂模式(Simple Factory Pattern)是一种常用的创建型设计模式。它提供了一种方式来封装对象的创建过程,使得整个系统更加灵活,...
简单工厂模式、策略模式以及反射是Java编程中非常重要的概念,它们都是软件设计模式和语言特性的典型应用,对于理解和构建高效、可扩展的代码至关重要。 简单工厂模式是一种创建型设计模式,它提供一个工厂方法,...
简单工厂模式是Java设计模式中创建型模式的一种,也被称为静态工厂方法模式。该模式的主要思想是由一个专门的工厂类来负责创建其他类的实例。简单工厂模式通过封装创建对象的过程,使得调用者无需关心对象的具体创建...
在Java编程中,抽象工厂模式通常包括以下几个关键角色: 1. 抽象工厂(Abstract Factory):这是抽象接口,定义了创建一组相关或相互依赖对象的接口,而不必指定它们的具体类。 2. 具体工厂(Concrete Factory):...
在Java中,工厂模式可以帮助我们解耦代码,使得客户端代码与实际创建的对象类无关,只需要知道它们是哪种类型的对象即可。 工厂模式分为三种类型:简单工厂模式、工厂方法模式和抽象工厂模式。在这个例程中,我们将...