一.面向过程与面向对象
1.面向过程
- 面向过程编程的核心就是过程二字, 既先做什么, 再做什么, 然后做什么
- 优点 : 将复杂的问题流程化, 进而简单化
- 缺点 : 一整个流程只为了解决一个问题, 换另一个问题又需要另一个整套的流程, 牵一发而动全身
2.面向对象
面向对象只是一种思想,不是具体的某种技术或功能
对象的本质:就是用来盛放数据和功能对的容器,反过来说能够把数据和功能盛放的容器就是对象
程序=数据+功能
面向对象编程的核心就是对象二字, 对象是特征与技能的集合体
- 也可以说对象是一个容器, 用来盛放 数据(特征) 和 功能(技能)
- 优点 : 提高程序的解耦合性, 进而提高程序的可扩展性, 对某一个对象单独修改, 会立刻反映到整个体系当中
- 缺点 : 编程的复杂程度远高于面向过程, 并且不能精准的预测到问题的处理流程和结果, 只能让对象之间进行交互才能准确的知道最终的结果
ps : 一个软件质量因素有很多: 性能, 可维护, 可扩展, 可移植, 成本, 安全......, 而面向对象解决的仅仅是可扩展性的问题, 所以它也是有局限性的
二.面向对象的三个特性
1.继承
2.封装
3.多态
三.类与对象
1.什么是类
- 类, 即类别, 种类, 是面向对象设计最重要的概念, 对象是特征与技能的集合体, 而类则是一系列对象相似特征与技能的集合体
- 现实世界与程序中类与对象的关系
2.类的定义与实例化
- 类名尽量使用驼峰体