封装,继承,多态

     封装:

      定义:就是将抽象得到的数据和行为相结合,形成一个有机整体,也就是将数据和代码进行有机的结合,形成类,其中的数据和函数都是类的成员,目的在于将对象的使用者和设计者分开.以提高软件的维护性和可修改性.

     特性: 1.结合性,即就是将属性和代码结合.2.信息隐藏性,利用接口机制隐藏内部的实现细节,只留下接口给外界调用3.实现代码的重用.

    继承:

      定义 :继承就是新类从已有类那里得到已有的特性.类的派生指的是从已有的类产生新类的过程,原有的类成为基类(父类),产生的新类称为派生类(子类),其目的就是为了代码重用.

  

多态 

 定义:可以简单的概括为“一个接口,多种方法”,即用的是同一个接口但是效果各不相同,多态分为两种形式,一种是静多态,一种是动多态

  动多态:是指程序在运行时才能确定调用那个函数,父类指针或引用指向子类对象,调用子类的函数,在编译时期无法确定调用那个函数。

使用时在父类中写一个虚函数,在子类中分别重写。用这个父类指针调用这个虚函数,它实际上会调用各自子类重写的虚函数。

运行期多态实现依赖的虚函数机制。当某个类声明了虚函数,编译器会将该类的对象安插在一个虚函数表指针,并为该类设计一张虚函数表,虚函数表中存放着该类虚函数地址,运行期间通过虚函数表指针和虚函数表去确定该虚函数的真正实现

 优点:OOP设计重要特征,能够处理同一个继承下的益智、异质类集合

 缺点:运行期间进行虚函数绑定,提高了程序的运行开销;庞大的虚继承层次,对接口的修改易影响类继承层次;由于虚函数在运行期间才绑定,所以编译无法对虚函数进行优化。

 

  

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值