设计模式
文章平均质量分 81
小弟季义钦
好东西要大家分享!
展开
-
创建型-工厂方法
package factory;/** * @author jiq * 类型:Creational * 定义: 工厂方法模式(Factory Method)定义一个创建对象的接口,但由子类决定 * 要实例化的类是哪一个。 工厂方法将类的实例化推迟到子类。 * OO原则: 要依赖抽象,而不要依赖具体类 *//************ * Pizza商店原创 2013-03-28 14:31:58 · 979 阅读 · 0 评论 -
创建型-单例
package singleton;/** * 类型:Creational * 定义:确保一个类只有一个实例,并提供一个全局访问点。 * 代码说明:单例模式在多线程环境中的应用,采用懒加载方式 * */public class Singleton { private static Singleton instance = null; private Singleto原创 2013-03-28 14:38:34 · 1097 阅读 · 0 评论 -
结构型-适配器模式
package adapter;/** * @author jiq * 类型:Structural * 定义: 适配器模式将一个类的接口,转换成客户期望的另一个接口。适配器模式让原本 * 接口不兼容的类,现在可以合作无间。 * * OO原则:使用对象组合,以修改的接口来包装被适配者。 * 我们绑定的是客户(使用适配器一方)和接口,而不是绑定客户和实现。原创 2013-03-28 14:43:57 · 1120 阅读 · 0 评论 -
行为型-策略模式
package strategy;/** * @author jiq * 类型:Behavioral * 模拟各种鸭子,会有用,呱呱叫,有的会飞,有的不会等... * 继承并不总是好的选择。 * ************************************************** * 策略模式定义: * 定义一个算法簇,分别封装起来,让他们之间可以原创 2013-03-28 14:47:26 · 1025 阅读 · 0 评论 -
行为型-模版方法
package templateMethod;/** * @author jiq * 类型:Behavioral * 定义: 模板方法在一个方法中定义了一个算法的骨架,而将其中一些步骤的实现延迟到子类中。 * 模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。 * * OO原则:好莱坞原则- 别调用我们,我们会调用你的。 * 在好莱坞原创 2013-03-28 14:46:51 · 1148 阅读 · 0 评论 -
结构型-组合模式
package composite;import java.util.ArrayList;import java.util.Iterator;/** * @author jiq * 类型:Structural * 定义: 组合模式(Composite)允许你讲对象组合成属性结构来表现“整体/部分”的层次结构。 * 组合能让客户以一致的方式对待这个层次结构中的个别对象原创 2013-03-28 14:46:04 · 1062 阅读 · 0 评论 -
结构型-代理模式
package proxy;import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy;/** * @author jiq * 类型:Structural * 定义: 代理模式为另一个对象提供一个占位符(替身)以控制这个原创 2013-03-28 14:42:25 · 962 阅读 · 0 评论 -
创建型-Builder
package builder;/** * @author jiq * 类型: Creational * 定义:是一种对象构建模式。它可以将复杂对象的建造过程抽象出来(抽象类别), * 对这个抽象过程的不同实现,可以构造出表现(属性)不同的对象。 * 适用性:在以下情况使用生成器模式: * (1)当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时;原创 2013-03-28 14:34:29 · 994 阅读 · 0 评论 -
结构型-Facade模式
package facade;/** * @author jiq * 类型:Structural * 定义:外观模式(Facade)提供一个统一的接口,用来访问子系统中的一群接口。外观 * 定义了一个高层接口,使得子系统更容易使用。 * * OO原则:最少知识原则 --- 只和你的密友交谈。 * * 区别: 装饰器模式包装一个对象,并提供额外的行为。原创 2013-03-28 14:45:20 · 1159 阅读 · 0 评论 -
结构型-装饰器
package decorator;/** * @author jiq * 类型:Structural * 定义:动态地将责任附加到对象上 * 若要拓展功能,装饰器提供了比继承更加有弹性的替代方案。 * OO原则: 类应该 对修改关闭,对拓展开放!!! * 1 作用: 对拓展开放,对修改关闭。 避免继承滥用,学会使用组合,在运行时装饰类。2 为原创 2013-03-28 14:39:52 · 1045 阅读 · 0 评论 -
创建型-抽象工厂
/************************************************************************* * 创建型: Singleton, Builder, Abstract Factory, Factory Method, Prototype * 结构型: Decorator, Composite, Proxy, Adapter, Facad原创 2013-03-28 14:29:09 · 1145 阅读 · 0 评论 -
行为型-观察者模式
package observer;import java.util.ArrayList;/** * @author jiq * 类型:Behavioral * 定义: 观察者模式定义了对象之间一对多的依赖,这样一来,当一个对象状态改变时, * 它所有的依赖者都会受到通知并自动更新。 * * 这个模式很好滴遵循了OO设计的三个原则: * (1) 将变化的部分和原创 2013-03-28 14:48:10 · 1240 阅读 · 0 评论 -
Java并发:线程安全的单例模式
转载请注明出处:jiq•钦'stechnical Blog1、饿汉式public class Singleton { private final static Singleton INSTANCE = new Singleton(); private Singleton() { } public static Singleton getInstance() { return INST原创 2016-03-26 22:40:36 · 1398 阅读 · 0 评论