抽象数据类型与表示独立性:能够分离程序中数据结构的形式和对其使用的方式
抽象数据类型与表示独立性:如何设计良好的抽象数据结构,通过封 装来避免客户端获取数据的内部表示(即“表示泄露”),避免潜在 的bug——在client和implementer之间建立“防火墙”
ADT的特性:不变量、表示泄漏、抽象函数AF、表示不变量RI
基于数学的形式对ADT的这些核心特征进行描述并应用于设计中
可变和不可变数据类型:
1.可变类型的对象:提供了可改变其 内部数据的值的操作
2.不可变数据类型: 其操作不可 改变内部值,而是构造新的对象
而又的一些类型提供两种形式
关于抽象类的操作方法
1.构造器(Creator)。构造器将某一个(某一些)与被构造数据类型不同的数据类型的对象作为参数,构造某个数据类型的具体对象。
2.生产器(Producer)。生产器利用某一类型的数据对象构造出该类型的新的数据对象。例如String.concat()。
3.观察器(Observer)。观察器以某一类型的数据作为被观测对象,会返回一个不同数据类型的值。例如List.size()。
4.变值器(Mutator)。变值器改变某个对象