基本定义 装饰者模式属于 结构型模式 ,它可以 动态的 将新功能 附加到对象上 ,同时又 不改变其结构 。在对象功能扩展方面,它比继承更有弹性,装饰者模式也体现了开闭原则(OCP)。 模式结构 装饰者和被装饰者有 相同的超类型 ,因为装饰者和被装饰者必须是一样的类型, 利用继承是为了达到类型的匹配, ...
分类:
其他好文 时间:
2020-04-03 16:37:14
阅读次数:
57
1、概述原型模式:使用原型实例指定待创建对象的类型,并且通过复制这个原型来创建新的对象。 2、结构建造者模式包含以下3个角色(1)Prototype(抽象原型类):它是声明克隆方法的接口,是所有具体原型类的公共父类,它可以是抽象类也可以是接口,甚至可以是具体实现类。(2)ConcreteProtot ...
分类:
其他好文 时间:
2020-04-02 22:35:31
阅读次数:
75
@[Toc] 什么是模板方法模式? 模板方法模式(Template Method Pattern)定义如下: Define the skeleton of an algorithm in an operation,deferring some steps to subclasses.Template ...
分类:
其他好文 时间:
2020-03-29 10:51:43
阅读次数:
90
[toc] 一、线性代数 万事万物都可以被抽象成某些特征的组合,线性代数的本质是将具体事物抽象为数学对象,描述其静态和动态的特征。 常见概念 标量(scalar) 一个标量 a 可以是整数、实数或复数 向量(vector) 多个标量 a1,a2,?,an 按一定顺序组成一个序列。通常用一维数组表示, ...
分类:
其他好文 时间:
2020-03-24 13:22:25
阅读次数:
126
一概述 上一节分析了retrofit2从创建到执行的完整流程,本节分析一下两个非常重要的功能。数据转换器的实现以及网络请求适配器的实现。 二、GsonConvertFactory.create()数据转换器的实现过程以及执行过程 我们先看下GsonConvertFactory.crete()的源代码 ...
分类:
编程语言 时间:
2020-02-25 23:21:25
阅读次数:
283
最近项目里,写了一个通知服务,具备处理短信、电邮、站内信的能力。但我做多了一点,就是可以通过配置选择它的能力,比如只具备处理短信或者具备点油、站内信的能力。 我画了一个简单的图 图中的 Dispatcher 是一个Message的中转器,它负责投递给最终的 SMS 、 Email 、 Website ...
分类:
其他好文 时间:
2020-02-23 20:36:41
阅读次数:
74
Template Method模式 在父类中定义处理流程的框架,在子类中实现具体处理 在Template Method模式中有以下登场角色 AbstractClass(抽象类) ConcreteClass (具体类) AbstractClass角色不仅负责实现模版方法, z 当使用AbstractC ...
分类:
其他好文 时间:
2020-02-11 09:55:30
阅读次数:
64
参考:https://www.cnblogs.com/wuhaozhou/p/5800788.html javascript 学习:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Inheritance_and_the_prototyp ...
分类:
移动开发 时间:
2020-01-31 18:58:39
阅读次数:
100
意思是 。。。 pubspec.lock的文件定义包所依赖的每个直接依赖项和间接依赖项的具体版本和其他标识信息 pubspec只列出直接依赖项和允许版本的范围,与pubspec不同,pubspec.lock文件全面地将整个依赖项对应到包的特定版本。pubspec.lock确保您可以重新创建应用程序使 ...
分类:
其他好文 时间:
2020-01-05 10:06:37
阅读次数:
313
概率(Probability):事件发生的可能性的数值度量。 组合(Combination):从n项中选取r项的组合数,不考虑排列顺序。组合计数法则:。 排列(Permutation):从n项中选取r项的组合数,考虑排列顺序。排列计数法则:。 贝叶斯定理(Bayes's Theorem):获取新信息 ...
分类:
其他好文 时间:
2019-12-20 22:22:28
阅读次数:
140