1. ADT(Abstract Data Tyoe)操作的四种类型
ADT操作主要分为四种:
- 构造器(creators):创造一个新的对象
- 生产器(producers):从一个已有的对象中生产出一个新的对象
- 观察器(observers):从一个抽象的对象类型中返回一个不同类型的对象
(很简单的栗子,就是各种getXX()方法……) - 变值器(mutators):改变对象属性的方法。通常返回void(如果返回值为void则必然意味着他改变了对象的某些内部状态,也可能返回非空类型)
其中构造器和生产器可能会有些混淆,对于构造器而言,可能为实现的构造函数或者静态函数等,而对于生产器就是从现有的对象出发,产生一个新的对象。下面几个例子可以帮助理解一下:
2. 表示独立性(representation independence)
表示独立性:客户端(client)使用ADT时无需考虑其内部是如何实现的,ADT内部表示的变化不应影响外部的spec和客户端。
说白