概述:
1.面向对象编程的组织方式是围绕“对象”,而不是围绕“行为”;围绕数据,而非逻辑
2.面向对象程序采用的观点是“一切都是对象”
3.面向对象编程语言都提供面向对象模型的机制,这些机制就是:封装,继承和多态性
4.面向对象程序设计的重点是类的设计,而不是对象的设计。
区别:
面向过程:
分析出解决问题所需要的步骤,然后用函数把这些步骤一一实现,使用的时候依次调用就可以了。
面向对象:
把构成问题的事务按照一定规则划分为多个独立的对象,然后通过调用对象的方法来解决问题。
面向对象概念可以概括成方程:
面向对象=对象+类+继承+通信
类是面向对象编程的具体实现。
对象的概念:
同一个对象在不同环境中体现不同的属性和行为,以符合该环境(系统)下对象的角色定位。
面向对象编程的优越性:
① 对象的数据封装特性彻底消除了传统结构方法中数据与操作分离所带来的种种问题, 提高了程序的可复用性可维护性,减轻了程序员保持数据与操作相容的负担。
② 对象的数据封装性还可以把对象的私有数据和公共数据分开,保护了私有数据,减少了可能的模块间干扰,达到了降低程序复杂性、提高可控性的目的。
③ 对象作为独立的整体具有良好的自理性,即它可以通过自身定义的操作来管理自己。一个对象的操作可以完成两类功能,一是修改自身的状态,二是向外界发布消息。
封装:
封装就是把对象的属性(状态)和方法(行为)结合在一起。
原则:
使对象以外的部分不能随意存取对象的内部数据,从而有效的避免了外部错误对它的“交叉感染”。
继承:
它通过重用现有类的属性和 方法,并增加新功能或修改现有功能来构建新的类
多态:
即使用不同实例执行不同放入操作
可以使得一个属性或者方法在父类和若干子类中有不同的语义。
类:
类是对象的模版,对象是类的一个实例。
类由属性和方法构成
对象的特征在类中表示为成员变量,称为类的属性。
类的方法是对象执行操作的一种规范。方法指定以何种方式操作对象的数据,是操作的实际实现。