首先我们先来讲一讲,有关面向对象领域的从业人员,大致可以分为两类:类创建者(创建新的数据类型的人)和客户程序员(在自己的应用程序中使用已存在的数据类型的人)。对客户程序员来讲,最主要的目标就是收集一个充斥着各种类的编程“工具箱”,一边快速开发符合自己要求的应用。而对类创建者来说,他们的目标就是从头创建一个类,只向客户程序员开发有必要开放的东西,其他所有细节都隐藏起来,控制对内部成员的访问。为什么要这么做呢?
第一,防止客户程序员接触他们不该接触的东西。包括隐藏内部的设计思想,防止他人篡改内部细节
第二,允许类创建者修改内部结构,将接口和实现方法隔离开之后,改写实现方法不会担心他对客户程序员造成影响。
|