- 抽象数据类型和表示独立性:所有的属性变为private,只能通过操作访问类
- 用户无法看到af ri
- ADT操作的4种类型
- 构造器
创建一个类的对象,从无到有 - 生产器
旧对象生成新对象 - 观察器
观察当前对象的某些特征,例如list的长度 - 变值器
改变属性的值
- 不变量:在任何时候总是true
- Ri:要满足的属性的条件
满射,未必单射,未必双射
AF:表示空间如何映射到真实空间 - 有益的可变性:改变了R没变A
例如 4/6 2/3 在A空间中都是2/3
Immutable类中的属性值一定不被改变么(错)
7.3个标准检测保持不变性
不要出现表示暴露
生产器,构造器创建的对象确保不变量为true
观察器,变值器执行时保持不变性