一、什么是面向对象程序设计
1.对象:客观世界的任何事物都可以看做的一个对象,是构成系统的基本单位,任何一个对象都具有两个要素:属性、行为。设计面向对象软件时首先就需考虑有哪些对象构成了软件,以对象为中心,类和继承为构造机制开发软件系统。
2.封装与系统隐藏:使用车辆时无需熟悉车的内部构造,只需了解方向盘油门刹车等功能。设计面向对象时,通常把外界不必要知道的信息封装起来,把对象的内部实现和外部功能分割开来。
封装性:将有关数据与操作封装在一个对象中形成一个基本单位;将对象中的某些部分对外界隐藏细节,只留下少量接口。
3.抽象:将有关数据的共性归纳集中的过程。类是对对象的抽象,对象则是类的特例或是具体表现形式。
4.继承与重用:继承可以很方便地利用一个已有的类创建一个新的类
5.多态性:由继承产生的一些相似而不相同的类对同一消息做出的不同响应。
二、面向对象程序特点
传统的程序设计主张将程序看作一系列函数的集合,或者直接就是一系列对电脑下达的指令。面向对象程序设计中的每一个对象都应该能够接受数据(数据结构)、处理数据(算法)并将数据传达给其它对象,因此它们都可以被看作一个小型的“机器”,即对象。
三、面向对象软件开发步骤
1.面向对象分析(OOA):
对需求从宏观角度做出分析与描述,识别出对象以及其联系,生成一个需求模型
2.面向对象设计(OOD):
对模型的每一个部分进行设计,主要对类进行设计(并不涉及某一编程语言,一般为UML通用建模语言)
3.面向对象编程(OOP)
使用一种面向对象编程语言进行实现