设计模式
diweikang
心如止水
展开
-
工厂模式之--简单工厂模式
简单工厂模式模式分为三种:01、普通就是建立一个工厂类,对实现了同一接口的一些类进行实例的创建。首先看下关系图:举例如下:(我们举一个发送邮件和短信的例子)首先,创建二者的共同接口: public interface Sender { public void Send(); } 其次,创建实现类: public cl...原创 2016-06-24 11:36:52 · 313 阅读 · 0 评论 -
工厂模式之--工厂方法模式
简单工厂模式有一个问题就是,类的创建依赖工厂类,也就是说,如果想要拓展程序,必须对工厂类进行修改,这违背了闭包原则,所以,从设计角度考虑,有一定的问题,如何解决?就用到工厂方法模式,创建一个工厂接口和创建多个工厂实现类,这样一旦需要增加新的功能,直接增加新的工厂类就可以了,不需要修改之前的代码。请看例子:public interface Sender { public v...原创 2016-06-24 11:44:35 · 663 阅读 · 0 评论 -
建造者模式
建造者模式可以将一个产品的内部表象与产品的生成过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象。对象性质的建造:有些情况下,一个对象会有一些重要的性质,在它们没有恰当的值之前,对象不能作为一个完整的产品使用。比如,一个电子邮件有发件人地址、收件人地址、主题、内容、附录等部分,而在最起码的收件人地址未被赋值之前,这个电子邮件不能发出。有些情况下,一个对象的一些性质必须...原创 2016-06-24 14:11:11 · 361 阅读 · 0 评论 -
生产者-消费者模型的Java实现
生产者-消费者(producer-consumer)问题,也称作有界缓冲区(bounded-buffer)问题,两个进程共享一个公共的固定大小的缓冲区。其中一个是生产者,用于将消息放入缓冲区;另外一个是消费者,用于从缓冲区中取出消息。问题出现在当缓冲区已经满了,而此时生产者还想向其中放入一个新的数据项的情形,其解决方法是让生产者此时进行休眠,等待消费者从缓冲区中取走了一个或者多个数据后再去唤醒它。...原创 2016-07-29 18:24:20 · 516 阅读 · 0 评论 -
生产者-消费者模式(阻塞队列实现)
生产者消费者模式是并发、多线程编程中经典的设计模式,生产者和消费者通过分离的执行工作解耦,简化了开发模式,生产者和消费者可以以不同的速度生产和消费数据。这篇文章我们来看看什么是生产者消费者模式,这个问题也是多线程面试题中经常被提及的。如何使用阻塞队列(Blocking Queue)解决生产者消费者模式,以及使用生产者消费者模式的好处。真实世界中的生产者消费者模式生产者和消费者模式在生活当中...原创 2016-08-01 14:22:30 · 1992 阅读 · 0 评论 -
Java单例模式优化写法
方法一:推荐public class SingletonClass { private static class SingletonClassInstance { private static final SingletonClass instance = new SingletonClass(); } public static SingletonClass...原创 2016-05-09 18:17:37 · 1198 阅读 · 0 评论