小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。
什么是面向对象
面向对象是一种软件开发中的策略,是一套关于如何看待软件系统和现实 生活的关系,研究问题并进行问题求解,以及如何系统构建软件方法。
面向对象的思想
客观存在的事物中构造系统
- 直接以现实世界存在的问题来思考问题、认识问题,并根据这些问题事物 的本质特征,把它们抽象成系统中的对象,作为系统中的基本构成单位
- 使系统产生的问题域,保持问题域和相互关系的原本面貌
充分利用现实思维解决问题
- 抽象、分配、继承、聚合、封装、关联等原则
- 使开发者有效思考问题,并建立对象关系和交流
面向对象的主要特点
- 对象表示现实问题域的事物、系统是基本的构成单位
- 对象的属性和操作展示了静态特征和动态特征,对外屏蔽内部细节
- 对象之间进行继承、聚合、关联等实际都在如实表达事物之间存在的各种关系 的构成成分,通过这些成分关系,直接映射问题域
对象
现实对象与软件对象的映射
对象属性、操作、标识
- 属性(attribute),属性是用来描述对象静态特征的⼀个数据项
- 操作(operation),操作是用来描述对象动态特征的⼀个动作序列
- 标识(identification),对象标识就是对象的名字,有“外部标识”和“内部标识”之分
封装是把对象的属性和操作结合成⼀个独立的系统单位,并尽可能隐蔽对象的内部细节。