java的二十三种设计模式
heinika
没有人生活在过去,也没有人生活在未来。
展开
-
装饰者模式
仔细想想经常用到的下面这句话,你就能感受到装饰者的含义了 BufferedReader br = new BufferedReader(new InputStreamReader(is)); 对比一下: Decorator decorator = new Decorator_two(new Decorator_first( new Decorator_zero转载 2015-08-23 16:25:30 · 588 阅读 · 1 评论 -
代理模式
对一些对象提供代理,以限制那些对象去访问其它对象。只有满足代理的条件才能访问被代理的对象。不明白再看看这里:http://blog.csdn.net/jason0539/article/details/22974405原创 2015-08-23 16:40:13 · 325 阅读 · 0 评论 -
创建型模式01:简单工厂模式、工厂方法模式、抽象工厂模式
简单工厂模式 产品类:设置一个产品抽象类,写几个具体产品 工厂类:使用case语句来选择要生产的产品 客户类:创建工厂,生产具体产品 package creationalpattern.factorymethod.simple; /** * 客户类 * @author heinika *简单工厂模式又称静态工厂方法模式。重命名上就可以看出这个模式一定很简单。它存在的目的很简单:原创 2015-08-12 21:25:14 · 392 阅读 · 0 评论 -
abstract class和interface的区别 及模板方法设计模式
定义 abstract class:含有abstract修饰符的class即为抽象类,abstract 类不能创建的实例对象。含有abstract方法的类必须定义为abstract class,abstract class类中的方法不必是抽象的。abstract class类中定义抽象方法必须在具体(Concrete)子类中实现,所以,不能有抽象构造方法或抽象静态方法。如果的子类没有实现抽象父类原创 2015-08-14 10:16:06 · 406 阅读 · 0 评论 -
单例设计模式
饿汉式/** * 饿汉式方法 * 饿汉式在类创建的同时就已经创建好一个静态的对象供系统使用,以后不再改变,所以天生是线程安全的。 * */ public class Singleton4 { private static final Singleton4 single = new Singleton4(); //静态工厂方法 public原创 2015-08-17 09:16:13 · 337 阅读 · 0 评论 -
建造者模式
定义: 建造者模式:将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。实用范围 1、当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时。 2、当构造过程必须允许被构造的对象有不同表示时。角色 在这样的设计模式中,有以下几个角色: 1、Builder:为创建一个产品对象的各个部件指定抽象接口。 2、ConcreteBuilder:实现Builder原创 2015-08-16 21:34:25 · 369 阅读 · 0 评论 -
原型模式
当要创建大量相似对象时,使用原型模式。/** * 实现Cloneable接口。在java语言有一个Cloneable接口, * 它的作用只有一个,就是在运行时通知虚拟机可以安全地在实现了此接口的类上使用clone方法。 * 在java虚拟机中,只有实现了这个接口的类才可以被拷贝, * 否则在运行时会抛出CloneNotSupportedException异常。 *重写Object类中的cl原创 2015-08-17 21:40:43 · 314 阅读 · 0 评论 -
适配器模式
structuralpattern类适配器/** 目标接口(Target):客户所期待的接口。目标可以是具体的或抽象的类,也可以是接口。 需要适配的类(Adaptee):需要适配的类或适配者类。 适配器(Adapter):通过包装一个需要适配的对象,把原接口转换成目标接口 * */ //已存在的、具有特殊功能、但不符合我们既有的标准接口的类 class Adaptee { publi原创 2015-08-19 21:52:00 · 237 阅读 · 0 评论