
DesignPatterns
XiaoGuang-Xu
主要从事Hadoop Spark Flink,兴趣爱好:数据挖掘和机器学方向
展开
-
设计模式:简单工厂、工厂方法、抽象工厂之小结与区别 (转)
设计模式:简单工厂、工厂方法、抽象工厂之小结与区别 (转) 简单工厂,工厂方法,抽象工厂都属于设计模式中的创建型模式。其主要功能都是帮助我们把对象的实例化部分抽取了出来,优化了系统的架构,并且增强了系统的扩展性。 本文是本人对这三种模式学习后的一个小结以及对他们之间的区别的理解。 简单工厂 简单工厂模式的工厂类一般是使用静态方法,通过接收的参数的不同来返回不同的对象实例。 不修转载 2013-04-16 17:41:04 · 767 阅读 · 0 评论 -
策略设计模式
策略设计模式策略设计模式原创 2013-04-20 10:44:49 · 695 阅读 · 0 评论 -
动态代理设计模式
动态代理设计模式 设计模式中定义: 为其他对象提供一种代理以控制对这个对象的访问. 为什么要使用Proxy? 1.授权机制 不同级别的用户对同一对象拥有不同的访问权利,如Jive论坛系统中,就使用Proxy进行授权机制控制,访问论坛有两种人:注册用户和游客(未注册用户),Jive中就通过类似ForumProxy这样的代理来控制这两种用户对论坛的访问权限. 2.某个客户端不能直接操作到原创 2013-04-12 22:33:01 · 910 阅读 · 0 评论 -
JDK中使用到的23个经典设计模式
A. 创建模式 Singleton(单态):只允许一个实例 [java] view plaincopyprint? Runtime.getRuntime(); java.awt.Toolkit.getDefaultToolkit(); java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(); ja转载 2015-02-26 17:05:06 · 736 阅读 · 0 评论 -
设计模式面试题
DesignPatterns(设计模式) 1、开发中都用到了那些设计模式?用在什么场合? 每个模式都描述了一个在我们的环境中不断出现的问题,然后描述了该问题的解决方案的核心。通过这种方式,你可以无数次地使用那些已有的解决方案,无需在重复相同的工作。主要用到了MVC的设计模式。用来开发JSP/Servlet或者J2EE的相关应用。简单工厂模式等。 2、编程题: 写一个Sing转载 2013-04-08 16:38:23 · 861 阅读 · 0 评论 -
《Head.First设计模式》的学习笔记
《Head.First设计模式》的学习笔记 http://blog.youkuaiyun.com/aayysyz12345678/article/details/9374959转载 2014-12-11 16:42:56 · 530 阅读 · 0 评论 -
由JDBC数据库连接所联想到的五种设计模式
最近在看设计模式方面的资料.突发灵感,从数据库的连接中联想到了5种设计模式.然后编写了下,都能实现,可能有些实现方式在实际生产环境中并没有意义.就当是对设计模式的学习吧. 首先上演的就是策略模式.我们在连接数据库时,并非一种数据库,比如,有时是MySql,有时是Oracle,有时又换到SQL Server,都要涉及数据库的切换.此时.我们就可以将数据库连接的算法封装起来,使它们可以相互替换.转载 2013-10-21 21:26:50 · 1147 阅读 · 0 评论 -
抽象工厂设计模式
抽象工厂设计模式 抽象工厂是应对产品族概念的。比如说,每个汽车公司可能要同时生产轿车,货车,客车,那么每一个工厂都要有创建轿车,货车和客车的方法。 应对产品族概念而生,增加新的产品线很容易,但是无法增加新的产品。 抽象工厂:用来生产不同产品族的全部产品。(对于增加新的产品,无能为力;支持增加产品族) 代码 demo01 package three; public interf原创 2013-04-16 17:44:02 · 624 阅读 · 0 评论 -
适配器设计模式
适配器设计模式 定义: 将两个不兼容的类纠合在一起使用,属于结构型模式,需要有Adaptee(被适配者)和Adaptor(适配器)两个身份. 为何使用? 我们经常碰到要将两个没有关系的类组合在一起使用,第一解决方案是:修改各自类的接口,但是如果我们没有源代码,或者,我们不愿意为了一个应用而修改各自的接口。 怎么办? 使用Adapter,在这两种接口之间创建一个混合接口(混血儿).原创 2013-04-20 10:42:32 · 1001 阅读 · 1 评论 -
工厂方法设计模式
工厂方法设计模式 工厂方法是针对每一种产品提供一个工厂类。通过不同的工厂实例来创建不同的产品实例。 在同一等级结构中,支持增加任意产品。 工厂方法 :用来生产同一等级结构中的固定产品。(支持增加任意产品) 代码 demo 01 package two.frist; public interface Sample { public void method();原创 2013-04-12 22:34:28 · 634 阅读 · 0 评论 -
简单工厂设计模式
简单工厂设计模式 简单工厂模式的工厂类一般是使用静态方法,通过接收的参数的不同来返回不同的对象实例。 不修改代码的话,是无法扩展的。 简单工厂 : 用来生产同一等级结构中的任意产品。(对于增加新的产品,无能为力) 为什么工厂模式是如此常用?因为工厂模式就相当于创建实例对象的new,我们经常要根据类Class生成实例对象,如A a=new A() 工厂模式也是用来创建实例对象的,所以以后原创 2013-04-16 17:42:37 · 722 阅读 · 0 评论 -
单态设计模式
单态设计模式 Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。 一般Singleton模式通常有几种种形式: 第一种形式: 定义一个类,它的构造函数为private的,它有一个static的private的该类变量,在类初始化时实例话,通过一个public的getInstance方法获取对它的引用,继而调用其中的方法。 one : pac原创 2013-04-09 14:02:10 · 728 阅读 · 0 评论 -
观察者设计模式
观察者设计模式 import java.util.* ; class House extends Observable{ // 表示房子可以被观察 private float price ;// 价钱 public House(float price){ this.price = price ; } public float getPrice(){ retur原创 2013-04-12 22:32:04 · 595 阅读 · 0 评论 -
责任链模式(职责链模式)
责任链模式(职责链模式)原创 2013-04-20 10:47:32 · 718 阅读 · 0 评论