设计模式一点一滴
游戏人日常
好好学习
展开
-
设计模式之单例
单例模式就是存在一个实例。这个实例在整个应用中只存在一个。接下来我就演示下几种常见的单例:1 饿汉模式 饿汉模式就是类一加载,该实例就创建了,public class SingleSimple { /** * private代表是不向外部暴露出去, */ private static SingleSimple single=new SingleSimple原创 2016-10-03 13:23:23 · 1312 阅读 · 5 评论 -
设计模式之代理模式
序言在看Retrofit源码时,我们会发现里面是使用了Java的动态代理的。 以前也接触过动态代理,平常不用,时间就久了就会慢慢淡忘。所以平常多总结,任何知识点也是如此。作用为其他的对象提供一种代理来控制这个对象的访问。增强目标对象的功能静态代理开发者接口public interface IDeveloper { void writeCode();} Andr...原创 2019-06-27 13:35:40 · 126 阅读 · 0 评论 -
设计模式之适配器模式
序言在以前学习适配器模式时,有个经典例子:就是有些电器的工作电压不是220V, 比如电脑工作电压20V,但是我们家庭用电的电压是220。怎么让20V的电脑在220V的电压下工作,这就需要一个电源适配器——俗称充电器或变压器。有了这个电源适配器 家庭的用电电压跟电脑的用电电压 即可兼容。适配器模式定义: 将一个接口转换成客户所希望的另一个接口,使接口不兼容的那些类可以一起工作,其别名为为包装器...原创 2019-07-08 19:01:27 · 157 阅读 · 0 评论 -
设计模式之简单工厂模式
序言简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式定义:定义一个工厂类,它可以根据参数的不同返回不同的类实例,被创建的实例通常都具有共同的父类。因为在简单工厂模式中用于创建实例的方法是静态方法,因此简单工厂模式又被称为静态工厂方法,它属于创建型模式。在简单工厂模式有三个基本角色:Pro...原创 2019-07-12 20:06:01 · 231 阅读 · 0 评论 -
设计模式之建造者模式
序言在看Retrofit源码时,可以看到里面用到了大量的设计模式,如果我们非常了解设计模式对理解是很有帮助的,在Rerofit里有用到建造者模式。定义将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以生成不同的表示。建造者模式也是对象创建行模式。说明: 单看这个定义初学者也是很蒙, 大概意思是不需要关心复杂对象创建过程,只需要知道建造者类型即可,建造者才关心这个复杂对象是如何一步一...原创 2019-06-29 17:41:04 · 338 阅读 · 0 评论 -
设计模式之工厂方法模式
序言简单工厂模式虽然简单,但是存在一个问题。 因为简单工厂模式是调用工厂类中的工厂方法,然后传入不同的参数来创建不同的产品,当引入一个新产品时,就需要修改工厂类,不符合“开闭原则”。 工厂模式不再提供一个工厂类来创建所有的产品对象,而是根据不同的产品来提供不同的工厂类。工厂模式定义 :定义一个用于创建对象的接口,让子类决定哪一个类实例化,创建具体的产品对象。工厂方法模式让一个类的实例化延迟到...原创 2019-07-14 16:22:52 · 230 阅读 · 0 评论 -
设计模式之抽象工厂模式
序言工厂方法模式通过引入工厂等级结构,解决了简单工厂模式中工厂类职责太重问题,由于工厂模式中的每个工厂只能生产一类产品,可能会导致大量的工厂类,,势必会增加系统的开销,此时可以考虑将一些相关的产品组成一个“产品族”,由同一个工厂来生产。———这也就是抽象工厂的基本思想。产品等级结构与产品族在讲抽象工厂模式之前,我们必须明白两个概念: 产品等级结构 、 产品族。产品等级结构: 产品等级结构...原创 2019-07-15 21:56:40 · 239 阅读 · 0 评论