设计模式
这个杀手不太累
这个作者很懒,什么都没留下…
展开
-
Singleton Pattern单例模式
单例模式:确保一个类只有一个实例,并提供一个全局访问点。类图Singleton类,其构造方法(函数)是私有的,然后对外公开一个getInstance()方法来获取实例。经典模式的Singleton(单例)模式实现 public class Singleton{ private static Singleton instance; private Singleton(){原创 2016-09-30 00:41:50 · 445 阅读 · 0 评论 -
组合模式Composite Pattern
组合模式(Composite Pattern),以称部分整体模式,属于结构型设计模式。public class Human { private String name; private String des; private List<Human> humanList = new ArrayList<>(); public Human(String name, Stri原创 2017-12-13 15:40:16 · 173 阅读 · 0 评论 -
设计模式-桥接模式
桥接(Bridge)是用于把抽象化与实现化解耦,使得两者独立变化,互不影响。属于结构型设计模式,通用提供抽象化和实现化的桥接结构,来实现两者的解耦。public interface GpuApi { void drawGame();}public class HighGpu implements GpuApi { @Override public void drawGame原创 2017-11-22 16:31:30 · 172 阅读 · 0 评论 -
适配器模式
适配器模式(Adapter Pattern)适用于两个不兼容的接口做兼容处理,属于结构性设计模式。这种模式涉及到一个单一的类,该类负责整合不兼容接口的处理。适配器模式在现在生活中有许多例子,比如笔记本电源适配器,是作为笔记本电源和交流电源之间的适配。USB接口是整合其它设备与笔记本的适配等等。public interface IPower { int output();}public cl原创 2017-11-17 09:32:38 · 121 阅读 · 0 评论 -
过滤器模式
过滤器模式顾名思义就是根据我们需要过滤对象,得到需要的对象,属于结构型设计模式。 过滤器在现实中也有很多例子,比如净化水,滤波器等…public interface FilterPerson { List<Person> filterMeet(List<Person> list);}public class Person { public String name; publi原创 2017-11-30 20:06:48 · 183 阅读 · 0 评论 -
抽象工厂模式
上节我们说到工厂模式是用来创建对象的,那比如我们需要多个工厂的话,那就需要抽象工厂了,抽象工厂模式是用来创建一系列工厂的设计模式,属于创建型。还是用电脑来比喻,CPU有CPU的工厂,我们需要CPU的时候,只要告诉CPU工厂型号就可以得到相应的CPU对象,电脑的组件不止CPU,比如主板,我们需要主板的话,是不是也需要一个主板工厂了。 Board代码,CPU的代码已经在工厂模式中贴上了,这里就不贴了p原创 2017-11-14 10:15:44 · 155 阅读 · 0 评论 -
工厂模式
工厂模式(Factory Pattern)是Java中常用的设计模式之一,属于创建型模式,它提供了在创建对象时不会对客户端暴露创建的逻辑,只是通过使用一个共同的接口来指向新创建的对象。我们通过一个简单的例子来说明,大家都知道电脑的核心是CPU,CPU提供运算处理数据,CPU又分为单核,双核,四核等。在电脑的角度想,电脑并不关心CPU是如何制造的,只要可以插入到主板的CPU卡槽中可以使用就行。在我们需原创 2017-11-13 09:20:31 · 278 阅读 · 0 评论 -
原型模式
原型模式(Prototype Pattern)是用来创建重复的对象,这种模式属于创建性模式。 这种模式是实现了一个原型接口,该接口用于创建当前对象的克隆,当直接创建对象的代价比较大时,采用原型模式创建对象是最佳方式。类图: /** *书类型 *Cloneable代表Prototype *Book代表实现克隆方法接口 */public class Book implements Clon原创 2017-08-12 22:29:20 · 181 阅读 · 0 评论 -
Android Builder模式详解
经典Builder模式 1) 定义:将一个复杂对象的构建与它的表示分离,使得同样 的构建过程可以创建不同的表示。2) 经典的Builder模式有四个参与者Product:被构造的复杂对象Builder:抽象接口,用来定义创建Product对象的各个组成部 件的操作。ConcreteBuilder:Builder接口的具体实现,可以定义多个, 是实际构建Produc原创 2016-12-19 01:31:22 · 5717 阅读 · 0 评论 -
策略模式(Strategy Pattern)
先从一个例子说起…. 首先有一个系统内部设计使用了标准的OO技术,设计了一个鸭子超类(superclass)。并让各种鸭子继承此超类。 产品经理提出了新的需求,引入了会飞的鸭子....,对于一个OO程序员来说,这有什么困难的了,只要在鸭子超类(Duck)中加入fly()方法就可以了。可是这样的话,所有的鸭子就都会飞了...,可以在不需要飞行的鸭子子类中重写fly()方法...,这样也是原创 2016-10-19 22:45:41 · 332 阅读 · 0 评论 -
设计模式
在1994年,由Erich Gamma、Richard Helm、Ralph Johnson和John Vlissides四人合著出版了一本名为Design Patterns Elements of Reusable Object-Oriented Software(设计模式-可复用的面向对象软件元素)的书,该书首次提到了软件开发过程中设计模式的概念。 四位作者合称GOF(四人帮,Gang of原创 2017-11-10 17:13:49 · 224 阅读 · 0 评论