ActionScript3 中的封装: 类的成员 类 包与访问控制
OOP的三大要素为: 封装 继承 多态
ActionScript 3 中的封装包括: 类的成员访问控制 包和类的访问控制 命名空间的使用设计这些语法的根本用意就是为了
实现更好更灵活的隐藏细节
封装(encapsulation) 又叫隐藏实现 (Hiding the implementation) 具体的意思是将实现的细节隐藏起来 只将必要的
功能接口对外公开使用这些代码单元的用户只知道这些代码单元可以提供哪些服务 却并不知道这些代码单元中的具体逻辑
是怎样的
类的创建者只将类的功能性接口对外公开 而将其他细节设为私有 对外不公开类的使用者 只需知道怎么调用类对外公开的
方法就可以了 类的使用者不需要知道这些功能在类中实现到底是怎样的
如何让一部分接口暴露呢? 如何隐藏不对外公开的方法呢?
使用访问控制说明符 这是实现封装的一个重要方法
ActionScript 3 使用访问控制说明符来告诉外部使用者 本代码单元有哪些成员可以被外部访问到 哪些不能被访问到 将访
问控制符从"毫无限制"到"严格限制" 的排序为
public 公共权限
protected 子类可以访问父类
internal (默认) 包内访问级别
private 类内部私有成员访问权限
对代码单元访问控制的越严格 代码修改的自由度越大
为什么需要封装
封装使修改代码更加容易和安全
我们在修改代码单元时 只需要关注保持对外开放的成员行为不变 对私有成员则可以自由修改 甚至 我们可以完全重写某个
代码单元 只要保证它对外部的开放成员和以前相同就没有问题
封装让整个软件开发的复杂度大大降低