第一章 对象导论
1.1 抽象过程 所有编程语言都提供了抽象机制。 抽象①: 解决问题时基于计算机结构(如汇编语言); 抽象②: 解决问题时只针对问题建模(但是这还不是面向对象,如早期的某些编程语言,它们有的把所有问题都转化为列表,把所有问题都转化成算法形式,但是都是解决特定的问题); 面向对象: 解决问题时基于所要解决的问题的结构,根据问题来描述问题,而不是像抽象①和抽象②。 ·万物皆为对象; ·程序是对象的姬和,它们通过发送消息来告知彼此所要做的; ·每个对象都有自己的由其他对象所构成的存储(就是包含); ·每个对象都拥有其类型; ·某一特定类型的所有对象都可以接收同样的信息(就像圆形也是几何形,那么圆形也能接受发给几何形的信息)。 1.2 每个对象都有一个接口 方法就是接口。 面向对象总如何根据问题来描述问题,就是定义类。 1.3 每个对象都提供服务 每个对象都只好好完成一项任务,不去做更多的事。就是不要把所有事情都堆在一个对象里,将事情合理分解,也易于修改。 1.4 被隐藏的具体实现 把程序开发人员分为 类创建者 和 客户端程序员 。 类创建者: 构建类; 客户端程序员: 收集类用来进行应用开发。 这就像是我们刚开始学习时接触到的一个例子,时钟。类创建者将时钟抽象成一个类,如小时、分钟、秒构成一个属性类,设置闹钟、调时钟的方法构成一个类