详列JDK中的设计模式(一)创建型

1.单例模式(Singleton):只存在一个实例而对外提供公开的访问点

  (1)NumnerFormat只有一个实例

  (2)Runtime(JVM运行于系统之上,由Runtime可以获取系统的信息):而Runtime是单例的,饿汉式

0.静态工厂(Factory):根据传入方法的参数来构造实例,对外隐藏创建实例的细节

  (静态工厂不属于23种设计模式,但此处列举以便理解)

  (1)Integer.valueOf() Integer类中根据普通类型的值来创建包装类Integer

  (2)Class.forName() 反射中根据全限定类名来创建实例

2.工厂方法模式(Factory Method):抽象工厂,抽象产品实现松耦合,实现类决定产出什么产品

  Collection.iterator 集合Collection实现了Iteatorable接口,其内部有一个内部迭代器类,可通过iterator()方法获取到迭代器(这一方法正是那个工厂方法)

  集合Collection代表工厂,迭代器Iterator代表产品

  Collection代表抽象工厂接口,生产产品的方法为Iterator(),返回抽象的产品接口 ,而具体的集合类实现此接口(具体的List,具体的Set等实体类),生产的Iterator是产品接口的实现类具体Iterator生产什么具体的产品由实现什么具体工厂

 3.抽象工厂模式(Abstract Factory):抽象工厂接口生产的产品有多种

(1)java.sql包中Connection创建Statement

 JDBC的使用中,加载驱动后使用DriverManager.gerConnection获取的是Connection的实例,Connection是连接接口,而后由Connection创建用以执行不同sql语句的Statement,预编译PreparedStatement和用以执行存储过程的CallableStatement.这时Connection相当于抽象工厂接口,可生产多种抽象产品。

  Connection就成为了抽象工厂,而Statement,PreparedStatement,CallableStatemen是多种抽象产品,抽象工厂可生产多种抽象产品,而对应的实例工厂MysqlCollectionImpl生产实力产品Impl

 4.建造者模式(Builder):构造一个实例需要大量的工作,所以将构建逻辑提到了单独的类中

  (1)解析XML时构建总的document需要遍历所有节点,包括注释文本等  ,建造过程繁琐,就就将它分离出来

5.原型模式(Prototype):克隆,深拷贝,浅拷贝

  (1)Object.clone / Cloneable

  

原文地址:https://www.cnblogs.com/autism-dong/p/12150658.html

时间: 2024-10-03 17:35:09

详列JDK中的设计模式(一)创建型的相关文章

(转载)JDK中的设计模式

写的很好,学习道路更轻松一些 原文地址:http://blog.csdn.net/gtuu0123/article/details/6114197 JDK中设计模式 分类: Java相关 设计模式 2011-01-03 20:42 3550人阅读 评论(6) 收藏 举报 jdk设计模式swingclassloaderdocumentationiterator 本文主要是归纳了JDK中所包含的设计模式,包括作用和其设计类图. 首先来个总结,具体的某个模式可以一个一个慢慢写,希望能对研究JDK和设计

设计模式3 创建型模型

设计模式3 创建型模型 目录: 简单工厂模式 工厂方法模式 抽象工厂模式 单例模式 简单工厂 模型 [email protected]:~$ cat main.cpp  //设计模式:简单工厂 模型 #include<iostream> using namespace std; class Fruit { public: Fruit(string kind) { this->kind = kind; if(kind == "apple") {} else if (ki

设计模式之创建型模式(上)

没有总结的学习不算学习,这一个月的学习可谓收获多多啊,接下来与大家分享一下. 一.设计模式的分类 总体来说设计模式分为三大类: 1.创建型模式,共五种. 2.结构型模式,共七种. 3.行为型模式,共十一种. 首先研究创建型模式 二. 概述 创建型模式,就是用来创建对象的模式,抽象了实例化的过程.它帮助一个系统独 立于如何创建.组合和表示它的那些对象. 三. 为什么需要创建型模式 所有的创建型模式都有两个永恒的主旋律: 第一,它们都将系统使用哪些具体类的信息封装起来: 第二,它们隐藏了这些类的实例

java设计模式-创建型

1.设计模式介绍 1.1 设计模式的概念 1.设计模式是一套被反复使用,多数人知晓,经过分类编码目的的优秀代码设计经验的总结. 2.设计模式贯彻的原理:面向接口编程,而不是面向对象实现. 3.设计模式的目标:降低耦合性,增强灵活性. 1.2 设计模式的要素 1.模式名称 2.问题 3.环境与初始环境 4.解决方案 5.效果 6.举例 7.末态环境 8.推理 9.其他有关模式 10.已知的应用 1.3设计模式的分类 1.创建型 1.1  单例模式 1.2  工厂模式 1.3  抽象工厂模式 1.4

设计模式 (创建型模式)

  设计模式 创建型模式 1.创建型模式         创建型模式,包括了5种设计模式,分别是 Singleton (单例模式),Factory(工厂模式),AbstractFactory(抽象工厂模式),Builder(创建者),Prototype(原型) ,创建型模式主要作用就是抽象了实例化过程.他们帮助一个系统独立于如何创建.组合和表示他的那些对象.一个类创建型模式使用继承改变被实例化的类.而一个对象创建型模式将实例化委托给另一个对象. 2.Singleton (单例模式)      单

&quot;围观&quot;设计模式(29)--创建型设计模式总结(单例、工厂、原型、创建者)

设计模式源码下载地址 设计模式源码下载地址 1  单例模式 单例模式,也叫单子模式,是一种常用的软件设计模式.在应用这个模式时,单例对象的类必须保证只有一个实例存在.许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体的行为.比如在某个服务器程序中,该服务器的配置信息存放在一个文件中,这些配置数据由一个单例对象统一读取,然后服务进程中的其他对象再通过这个单例对象获取这些配置信息.这种方式简化了在复杂环境下的配置管理.----维基百科(WIKIPEDIA) 个人的理解: 单例模式概

设计模式系列 - 创建型模式

单例模式 懒汉式,线程不安全. 除非是单线程程序,否则不推荐使用. public class Singleton { private static Singleton instance; private Singleton (){} public static Singleton getInstance() { if (instance == null) { instance = new Singleton(); } return instance; } } 饿汉式,线程安全 当程序总是使用这个

Jdk中的设计模式

转自:http://blog.csdn.net/gtuu0123/article/details/6114197 本文主要是归纳了JDK中所包含的设计模式,包括作用和其设计类图.首先来个总结,具体的某个模式可以一个一个慢慢写,希望能对研究JDK和设计模式有所帮助. 一.设计模式是什么(1)反复出现问题的解决方案(2)增强软件的灵活性(3)适应软件不断变化 二.学习JDK中设计模式的好处(1)借鉴优秀代码的设计,有助于提高代码设计能力(2)JDK的设计中体现了大多数设计模式,是学习设计模式的较好的

JDK 中的设计模式应用实例

在 JDK(Java Development Kit)类库中,开发人员使用了大量设计模式,正因为如此,我们可以在不修改 JDK 源码的前提下开发出自己的应用软件.研究 JDK 类库中的模式实例也不失为学习如何使用设计模式的一个好方式.以后用到现在设计模式了自己去看看JDK的源码还是很方便的. 1. 创建型模式: (1) 抽象工厂模式(Abstract Factory) ? java.util.Calendar#getInstance() ? java.util.Arrays#asList() ?