
Java设计模式
志见
志见,见我所见。
展开
-
Java设计模式之单例模式
一、单例模式描述 作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。二、单例模式特点 1、单例类只能有一个实例。 2、单例类必须自己创建自己的唯一实例。 3、单例类必须给所有其他对象提供这一实例。三、单例模式类型(一)饿汉式单例类 饿汉式是典型的空间换时间,当类装载的时候就会创建类的实例,不管你用不用,先创建出来,然后每原创 2016-09-07 17:58:46 · 526 阅读 · 0 评论 -
Java设计模式之代理模式
一、描述代理模式是对象的结构模式。代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。所谓代理,就是一个人或者机构代表另一个人或者机构采取行动。在一些情况下,一个客户不想或者不能够直接引用一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。比如我们在租房子的时候回去找中介,为什么呢?因为你对该地区房屋的信息掌握的不够全面,希望找一个更熟悉的人去帮你做,此处的代理就是这个意原创 2016-09-21 17:34:58 · 1227 阅读 · 0 评论 -
Java设计模式之观察者模式
一、概念描述观察者模式属于行为型模式,其意图是定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 这一个模式的关键对象是目标(Subject)和观察者(Observer)。一个目标可以有任意数目的依赖它的观察者,一旦目标的状态发生改变,所有的观察者都得到通知,作为对这个通知的响应,每个观察者都将查询目标以使其状态与目标的状态同步。二、适用场景观原创 2016-09-27 15:38:35 · 398 阅读 · 0 评论 -
Java设计模式之抽象工厂模式
一、概念描述抽象工厂模式可以向客户端提供一个接口,使得客户端在不必指定产品具体类型的情况下,创建多个产品族中的产品对象。每个模式都是针对一定问题的解决方案。抽象工厂模式面对的问题是多产品等级结构的系统设计。 在学习抽象工厂具体实例之前,应该明白两个重要的概念:产品族和产品等级。产品族:是指位于不同产品等级结构中,功能相关联的产品组成的家族。比如AMD的CPU和ADM芯片的主板,组成一个家族。Int原创 2016-09-27 16:56:33 · 621 阅读 · 0 评论 -
Java设计模式之建造者模式(一)
一、概念描述将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。 [构建与表示分离,同构建不同表示]与抽象工厂的区别:在建造者模式里,有个指导者,由指导者来管理建造者,用户是与指导者联系的,指导者联系建造者最后得到产品。即建造模式可以强制实行一种分步骤进行的建造过程。建造模式是将复杂的内部创建封装在内部,对于外部调用的人来说,只需要传入建造者和建造工具,对于内部是如何建造成成品的,原创 2016-09-29 11:48:17 · 423 阅读 · 0 评论 -
Java设计模式之建造者模式(二)
一、使用场景1、当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时。 2、当构造过程必须允许被构造的对象有不同的表示时。二、通用类图三、举例假设有一个手机厂商,为客户生产手机,整个手机由硬件、操作系统和应用程序组成,用户可能需要iPhone手机,或者Android手机。产品角色Product——Phone:package com.wz.builder;public class Ph原创 2016-09-29 15:25:07 · 373 阅读 · 0 评论