使用抽象类和接口,弱化类之间的耦合,使类可以更容易组件化 不使用具体类编程,要优先使用抽象类和接口编程 角色划分: Iterator迭代器接口,定义遍历元素的接口,hasNext判断是否有下一个、next获得下一个值 ConcreteIterator:迭代器具体的实现类,实现了hasNext、nex ...
分类:
其他好文 时间:
2018-08-28 01:07:46
阅读次数:
171
设计模式之策略模式 1.意图 根据GOF的定义:定义一系列的算法或操作,并把它们一个个封装起来,并且使它们可以互换替换。以达到算法与业务独立开发的目的。 简单的说就是针对某个业务需求,抽象出解决问题的算法的一个个方法,然后实现封装不同的特定的算法(通过集成抽象类或接口),在客户端需要使用这个算法的时 ...
分类:
其他好文 时间:
2018-08-26 22:03:57
阅读次数:
141
一:概念 二:动机 三:代码讲解 (一)原代码 //具体类 class BinarySplitter : public ISplitter{ }; class TxtSplitter: public ISplitter{ }; class PictureSplitter: public ISplit ...
分类:
其他好文 时间:
2018-08-26 18:16:11
阅读次数:
166
0、基本定义 工厂模式定义:一个用于创建对象的接口,让子类决定实例化哪一个类。实例化延迟到其子类。‘ 抽象工厂模式:为创建一组相关或相互依赖的对象提供一个接口,而且无须指定他们的具体类 只对结果负责。 解耦合 1、类型 1.1 、简单工厂模式: 1.2、工厂模式 Test 1.3 抽象工厂模式: 产 ...
分类:
其他好文 时间:
2018-08-26 01:18:42
阅读次数:
146
1. 什么是多态 多态指的是同一种/类事物的不同形态 2.为何要用多态性 1 增加了程序的灵活性 2 增加了程序的可扩张性 多态性:分为静态多态性和动态多态性 多态性:在多态的背景下,可以在不用考虑对象具体类型的前提下而直接使用对象 多态性的精髓:统一 3. 如何用多态 python 崇尚鸭子类型 ...
分类:
其他好文 时间:
2018-08-21 19:05:16
阅读次数:
137
row[column]的值为DBNull.Value的话,说明它是从数据库中取到值了,对应了数据库中的空值;但如果row[column]的值为null的话,说明没有从数据库中取到值。 DBNull.Value是一个有着内存地址的具体类型的值,映射了数据库中的NULL值; null则是空指向,不存在对 ...
分类:
数据库 时间:
2018-08-20 13:45:25
阅读次数:
180
SharedPreferences的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息,用Sqlite数据库来存放并不划算,因为数据库连接跟操作等耗时大大影响了程序的效率。其存储位置在/data/data/<包名>/shared_prefs目录下。 存储数据信息 1 ...
分类:
移动开发 时间:
2018-08-13 18:00:21
阅读次数:
199
建议的采用顺序是List中泛型顺序依次为T、?、Object (1)、List是确定的某一个类型 List表示的是List集合中的元素都为T类型,具体类型在运行期决定;List<?>表示的是任意类型,与List类似,而List则表示List集合中的所有元素为Object类型,因为Object是所有类 ...
分类:
编程语言 时间:
2018-08-13 12:04:37
阅读次数:
131
● Target(目标抽象类):目标抽象类定义客户所需接口,可以是一个抽象类或接口,也可以是具体类。 ● Adapter(适配器类):适配器可以调用另一个接口,作为一个转换器,对Adaptee和Target进行适配,适配器类是适配器模式的核心,在对象适配器中,它通过继承Target并关联一个Adap ...
分类:
其他好文 时间:
2018-08-12 21:38:23
阅读次数:
146
我们看到这个标题是不是觉得有点纳闷?我们要学习的是数据结构和,并不是某门语言。比如 C++ 就支持泛型编程,那么我们为什么还要来讨论这个呢?我们先来看看数据结构的特点:1、专注于数据元素之间的关系;2、专注于特定结构之上的算法。数据结构并不关注数据元素的具体类型!那么如何为数据结构的学习选择合适的语言呢?我们之前有见到过 C 语言版的数据结构,也有 C++ 版的数据结构。但是从耦合性的角度来看,支持泛型编程的语言最适合数据结构的学习。所谓泛型编程便指的是不考虑具体数据类型的编程方式。
分类:
其他好文 时间:
2018-08-09 00:33:59
阅读次数:
166