设计模式
Tmac柴
这个作者很懒,什么都没留下…
展开
-
设计模式之生成器模式
将一个复杂对象的创建和它的表示分离,使得同样的创建过程可以有不同的表示。应用场景:一水杯工厂要生产各式各样的水杯,无论杯子是神马造型,但都包括绳子,帽子和杯体。以此模型创建各种类型的杯子。类图 cup类public class Cup { private String string; //绳子 private String cap; //帽子 private原创 2016-01-19 10:27:30 · 2533 阅读 · 0 评论 -
设计模式之原型模式
使用原型模式创建对象比直接new一个对象在性能上要好的多,因为Object类的clone方法是一个本地方法,它直接操作内存中的二进制流,特别是复制大对象时,性能的差别非常明显。在说什么是原型模式前首先要解释一下两个概念,深复制和浅复制。 浅复制:复制一个对象时,基本类型字段复制其值,引用类型复制其引用。 深复制:复制一个对象时,不仅复制对象的基本类型的字段,而且也复制引用对象的对象。java中使原创 2016-01-25 13:12:32 · 503 阅读 · 0 评论 -
java并发之生产者消费者模型
生产者和消费者模型是操作系统中经典的同步问题。该问题最早由Dijkstra提出,用以演示它提出的信号量机制。经典的生产者和消费者模型的描述是:有一群生产者进程在生产产品,并将这些产品提供给消费者进程去消费。为使生产者进程与消费者进程能并发执行,在两者之间设置了一个具有n个缓冲区的缓冲池,生产者进程将它所生产的产品放入一个缓冲区中;消费者进程可从一个缓冲区中取走产品去消费。尽管所有的生产者进程和消费者原创 2016-01-10 14:21:30 · 3727 阅读 · 1 评论 -
设计模式之工厂模式
根据单一职责原则,专门的类用来实例化对象。我们习惯把这种类叫做工厂。 public interface Ihelper { void open(); void close(); }public class ORACLEHelper implements Ihelper{ @Override public void open() { Sy原创 2015-08-09 14:55:39 · 382 阅读 · 0 评论 -
设计模式之单例模式
意图:一个类仅有一个实例,并提供一个访问它的全局访问点特点:该类不能被外界任意实例化,该类向外界提供一个可获得该类的实例方法。该类只能被实例化一次public class Moto {private Moto() {}private static Moto moto;public Moto getInstance(){if(moto ==原创 2015-02-16 11:15:26 · 429 阅读 · 0 评论 -
设计模式之抽象工厂
抽象工厂模式是指当有多个抽象角色时,使用的一种工厂模式。抽象工厂模式可以向客户端提供一个接口,使客户端在不必指定产品的具体的情况下,创建多个产品族中的产品对象。应用场景:想必大家都玩过暴力摩托这款游戏(暴露了年龄),在游戏中赛车手可以骑行摩托和携带武器,我们假定他拿的武器是AK47(好拉风有木有)。这只是在普通的模式下,现在我们虚拟一个魔法模式。在魔法模式下赛车手骑的是扫把(对,你没有看错,是扫把)原创 2016-01-15 12:07:56 · 367 阅读 · 0 评论 -
设计模式之回调模式
回调在Spring中被大量使用,那什么是回调呢? 简单的说,在A类中调用B类的C方法,然后B类调用A类中的D方法。方法D被称为回调方法。回调是实现异步的基础。经典的回调方式如下:Class A实现回调接口CallBack——背景1class A中包含一个class B的引用b ——背景2class B有一个参数为callback的方法f(CallBack callback) —原创 2016-05-26 17:37:44 · 8900 阅读 · 0 评论