
设计模式
Geek_sun
为梦想而努力。
展开
-
java设计模式之建造者模式
一、什么是建造者模式 建造者模式:是将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 工厂类模式提供的是创建单个类的模式,而建造者模式则是将各种产品集中起来进行管理,用来创建复合对象,所谓复合对象就是指某个类具有不同的属性,其实建造建造者模式通常包括下面几个角色: 1、Builder:给出一个抽象接口,以规范产品对象的各个组成成分的建造。这个接口规定要实现复杂对象的哪些...原创 2019-02-21 15:35:51 · 183 阅读 · 0 评论 -
java责任链模式
转自:https://www.cnblogs.com/fan-yuan/p/7989377.html 接下来我们将要谈谈责任链模式,有多个对象,每个对象持有对下一个对象的引用,这样就会形成一条链,请求在这条链上传递,直到某一对象决定处理该请求。但是发出者并不清楚到底最终那个对象会处理该请求,所以,责任链模式可以实现,在隐瞒客户端的情况下,对系统进行动态的调整。先看看关系图: 此处强...转载 2019-02-26 23:01:23 · 227 阅读 · 0 评论 -
java设计模式之享元模式
转自:https://www.cnblogs.com/lfxiao/p/6817141.html 当前咱们国家正在大力倡导构建和谐社会,其中一个很重要的组成部分就是建设资源节约型社会,“浪费可耻,节俭光荣”。在软件系统中,有时候也会存在资源浪费的情况,例如在计算机内存中存储了多个完全相同或者非常相似的对象,如果这些对象的数量太多将导致系统运行代价过高,内存属于计算机的“稀缺资源”,不应该用来“...转载 2019-02-26 22:11:11 · 241 阅读 · 0 评论 -
java设计模式之外观模式(门面模式)
转自:https://www.cnblogs.com/lthIU/p/5860607.html 针对外观模式,在项目开发和实际运用中十分频繁,但是其极易理解,下面就简要介绍一下。 一、概念介绍 外观模式(Facade),他隐藏了系统的复杂性,并向客户端提供了一个可以访问系统的接口。这种类型的设计模式属于结构性模式。为子系统中的一组接口提供了一个统一的访问接口,这个接口使得子系统更容易被访...转载 2019-02-26 20:56:49 · 206 阅读 · 0 评论 -
Java设计模式之装饰者模式
要实现装饰者模式,注意一下几点内容: 1.装饰者类要实现真实类同样的接口 2.装饰者类内有一个真实对象的引用(可以通过装饰者类的构造器传入) 3.装饰类对象在主类中接受请求,将请求发送给真实的对象(相当于已经将引用传递到了装饰类的真实对象) 4.装饰者可以在传入真实对象后,增加一些附加功能(因为装饰对象和真实对象都有同样的方法,装饰对象可以添加一定操作在调用真实对象的方法,或者先调用真实对...转载 2019-02-26 20:38:53 · 243 阅读 · 0 评论 -
JAVA 设计模式 组合模式
组合模式 (Component) 用途 将对象组合成树形结构以表示“部分-整体”的层次结构。 组合模式使得用户对单个对象和组合对象的使用具有唯一性。 组合模式是一种结构型模式。 结构 Component : 组合中的对象声明接口,在适当的情况下,实现所有类共有接口的默认行为。声明一个接口用于访问和管理 Component 的子部件。 public abstract class C...转载 2019-02-25 11:27:39 · 187 阅读 · 0 评论 -
Java设计模式之桥接模式
桥接模式是一种很实用的结构型设计模式,如果软件系统中某个类存在两个独立变化的维度,通过该模式可以将这两个维度分离出来,使两者可以独立扩展,让系统更加符合“单一职责原则”。与多层继承方案不同,它将两个独立变化的维度设计为两个独立的继承等级结构,并且在抽象层建立一个抽象关联,该关联关系类似一条连接两个独立继承结构的桥,故名桥接模式。 桥接模式用一种巧妙的方式处理多层继...转载 2019-02-23 12:43:39 · 222 阅读 · 0 评论 -
java的两种代理模式
代理模式是什么 代理模式是一种设计模式,简单说即是在不改变源码的情况下,实现对目标对象的功能扩展。 比如有个歌星对象叫RealStar,他十分会唱歌,但是这个歌手十分忙,他只想唱歌不愿意做其他的事情,因此你需要帮助他完成任务! Star接口 package com.Geeksun.proxy.dynamicProxy; public interface Star { void ...原创 2019-02-22 23:26:34 · 583 阅读 · 0 评论 -
Java设计模式之《适配器模式》及应用场景
适配器就是一种适配中间件,它存在于不匹配的二者之间,用于连接二者,将不匹配变得匹配,简单点理解就是平常所见的转接头,转换器之类的存在。 适配器模式有两种:类适配器、对象适配器、接口适配器 前二者在实现上有些许区别,作用一样,第三个接口适配器差别较大。 1、类适配器模式: 原理:通过继承来实现适配器功能。 当我们要访问的接口A中没有我们想要的方法 ,却在另一个接口B中发现了...原创 2019-02-22 21:32:01 · 1806 阅读 · 0 评论 -
java三种工厂模式
一、简单工厂模式 举一个很简单的例子,有一个女生的接口。 package com.Geeksun.SimpleFactory; public interface Girl { void cry(); void talk(); } 这个接口有两个实现类 女神和萝莉!!! 女神是这个 package com.Geeksun.SimpleFactory;...原创 2019-02-12 11:36:01 · 426 阅读 · 0 评论 -
设计模式之单例模式
什么是单例设计模式? 单例模式,是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中,应用该模式的类一个类只有一个实例。即一个类只有一个对象实例。 具体实现 需要: (1)将构造方法私有化,使其不能在类的外部通过new关键字实例化该类对象。 (2)在该类内部产生一个唯一的实例化对象,并且将其封装为private static类型。 (3)定...原创 2019-02-09 23:33:03 · 242 阅读 · 0 评论 -
java设计模式之原型模式
原型模式概念 该模式的思想就是将一个对象作为原型,对其进行复制、克隆,产生一个和原对象类似的新对象。java中复制通过clone()实现的。clone中涉及深、浅复制。深、浅复制的概念如下: ⑴浅复制(浅克隆) 被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象。换言之,浅复制仅仅复制所考虑的对象,而不复制它所引用的对象。 Obje...转载 2019-02-21 17:46:59 · 273 阅读 · 0 评论 -
Java设计模式系列之迭代器模式
转自:https://www.cnblogs.com/ysw-go/p/5384516.html 迭代器模式定义 迭代器模式(Iterator),提供一种方法顺序访问一个聚合对象中的各种元素,而又不暴露该对象的内部表示。 迭代器模式的角色构成 (1)迭代器角色(Iterator):定义遍历元素所需要的方法,一般来说会有这么三个方法:取得下一个元素的方法next(),判断是否遍历结束的方法h...转载 2019-02-27 09:28:00 · 204 阅读 · 0 评论