OOP简介
含义 (OOP是什么)
OOP(Object Oriented Programming)-即面向对象编程。
目的
将数据和方法合并为类定义;同时有助于创建可复用的代码,减少大量工作;信息隐藏可以保护数据,免受不适当的访问。
OOP的三大特征
1.封装
含义
所谓封装就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的信息进行隐藏。
封装是面向对象的特征之一,是对象和类概念的只要特性,简单的说,一个类就是一个封装了数据以及操作这些数据的代码的逻辑实体。
在一个对象内部,某些代码或某些数据可以是私有的,不能被外界访问。通过这种方式,对象对内部数据提供了不同级别的保护,以防止程序中无关的部分意外改变或错误地使用了对象的私有部分。
目的
保护数据
模块化
2.继承
含义
在已有的类的基础上创建新的类,新类可以从一个或多个已有类中继承函数和数据(属性和行为),而且可以重新定义或加入新的数据和函数(属性和方法),从而形成类的层次或等级。
已有类称为基类(父类),在它基础上建立都新类称为派生类(子类)。
目的
代码共享,代码复用
实现类的层次结构
当新问题出现,原有方法不能或不能完全解决时,对原有程序的改造。
3.多态
含义
不同的对象收到相同的信息时,产生不同的响应动作
多态就是用一个名字定义不同的函数,这些函数执行着不同但类似的操作,即一个接口多个方法。
三个条件
要有继承,虚函数的重写以及要有父类指针指向子类对象。
多态的形式
静态联编
含义
在系统编译时就决定如何实现某一动作,class要求在编译时就要知道所调用的函数的所有信息。
主要优点
效率高,调用速度快
动态联编
含义
系统运行时动态实现某一动作,运行时才能确定调用哪个函数
主要优点
提供了更好的灵活性
问题抽象性
程序易维护性
多态的目的
接口复用