文章目录
前言
ADT,即抽象数据型,在计算机科学中有重要的意义。抽象数据型不关心数据如何存储和实现,强调作用于数据的操作。ADT又有如下特性:表示泄露、抽象函数AF、表示不变量RI。本文就将介绍ADT的基本概念和如何设计ADT。
一、ADT是什么?
传统类型会关注数据的具体表示。
而ADT由操作定义,只强调作用于数据上的操作,与其内部如何实现无关。
下图是一个形象展示:
二、ADT分类
ADT可以被分为可变和不可变类型,也即mutable 和immutable。
可变类型的对象:提供了可改变其内部数据值得方法。
不可变类型的对象:没有改变其内部值得方法,想改变值只能构造一个新的对象。
三、ADT操作的分类
ADT的操作主要可以分为四类:Creator(构造器)、Producer(生产器)、Observer(观察器)和Mutator(变值器)。
3.1 Creator
构造器映射如下Creator : t* → T。
造器中虽然可以将对象作为参数,但不能将正在构造的对象作为参数。
构造器可以是实现为构造函数,