概念 : 面向对象程序设计(Object Oriented Programming),基于面向过程发展而来的,除了步骤以外,他还追求操作事务的主体,即对象
- 面向对象是一种编程思想**,**不是一门技术
- 面向对象是基于面向过程的,所以也是一种模块化思想(有函数)
- 面向对象能够更加方便的实现代码复用(适用于大型项目)
在面向对象思维中,任何行为或者数据都属于对象(万物皆对象)
案例:学生到校报道注册
第一步:分析那些动作是由哪些实体发出的学生提出报名
- 学生缴费
- 机构收费
- 教师分配教室
- 班级增加学生信息
在整个过程中,一共有四个实体:
学生、机构、教师、班级!
在现实中的一个具体的实体,就是计算机编程中的一个对象!
第二步:定义这些实体,为其增加相应的属性和功能
属性就是实体在现实世界中的一些特征表现。如:
人的属性:姓名、性别、身高、三围、体重、电话号码、家庭住址、籍贯等
手机的属性:品牌、价格、颜色、尺寸、待机时间等
功能就是能完成的动作,在面向对象的术语中,动作就叫作方法或者函数。如:
人的动作(功能):吃饭、睡觉、学习、打游戏、走路、跑步、缴费!
手机的动作(功能):打电话、发短信、拍照、打游戏、视频、看电影等
下图显示了在上述实例中出现的实体以及相应的属性和功能:
第三步:让实体去执行相应的功能或动作
- 学生->提出报名
- 学生->缴费
- 学校->收费
- 教师->分配教室
- 班级->增加学生信息
所以说,面向过程主要是针对功能,而面向对象主要是针对能够实现该功能的背后的实体。面向对象实质上就是面向实体,所以当我们使用面向对象进行编程时,一定要建立这样一个观念:万物皆对象!