1.4被隐藏的具体实现:
将程序开发分两种:
类的创建者(创建新数据的程序员)和客户端程序员(在其应用中使用数据类型的类消费者)。
客户端程序员的目标是 收集各种用来实现快速应用开发的类。类创建者的目标是 构建类,这种类 只向客户端程序员暴露必需的部分,而隐藏其他部分。(意味类创建者可以任意修改被隐藏的部分,而不用担心对任何人造成影响。被隐藏的部分通常代表对象内部脆弱的部分,它们很容易被粗心的或不知内情的客户端程序员所毁坏,因此将实现隐藏起来可以 减少程序Bug)
访问控制原因:
如果所有的类成员对任何人都是可用的,那么客户端程序员就可以对类做任何事情,而不受任何约束。让客户端程序员无法触及他们不应该触及的部分-这些部分对数据类型的内部操作时必需的。
允许库的设计者 可以改变类内部的工作方式而不用担心会影响到客户端程序员。(例如:你发现了一个更好的方法,要运用它必需改写代码,如果接口和实现可以清晰地分离并得以保护,那你就可以轻松完成工作)