封装,继承(复合),多态(含义,例子,实现,关系)

参考文献
封装
含义:
封装又叫隐藏实现。就是只公开代码单元的对外接口,而隐藏其具体实现。

例子:
手机,电脑,电视等。只需要知道如何去操作,并不需要知道他们里面是怎么构造的,怎么实现这个功能的。

实现:
通过访问控制实现的。 Public, Protected, Private 等访问控制符。通过用Public将信息暴露,Private,Protected将信息隐藏,来实现封装。

意义:
a.封装使得对代码的修改更加安全和容易。将代码分成了一个个相对独立的单元。
使接口不变,其他代码可以自由修改
对代码访问控制得越严格,对代码修改的自由就越大。

b.封装使整个软件开发复杂度大大降低。
能很好的使用别人的类(class),而不必关心其内部逻辑是如何实现的。你能很容易学会使用别人写好的代码,这就让软件协同开发的难度大大降低。

c.封装还避免了命名冲突的问题。
封装有隔离作用。电话上的按键和电视遥控器上的按键肯定用处不同。但它们都可以叫做按键,为什么你没有弄混呢?很显然一个属于电话类一个属于遥控器类。不同的类中可以有相同名称的方法和属性,但不会混淆。
继承
含义:
重用和用一些已有的类去创建新的类。

主要思想:
将子类的对象作为父类的对象来使用。

例子:
鸟作为父类,喜鹊作为子类,鸟包括喜鹊,喜鹊是鸟的一种。

复合
含义:
只将一些已有的类进行组合,组成新的类。

例子:
汽车是由轮胎、发动机、玻璃这些内容组成的,这里我们先定义了轮胎、发动机、玻璃这些类,但是没有定义汽车类。那么现在我们定义汽车类的时候就只需要把轮胎、发动机、玻璃这些类拿过来进行组合就可以了。

何时用继承,何时用复合?
在实际编程中,使用复合的频率要远远超过继承,对于新手而言,要慎用继承,勤用复合。
a.需要用到向上转换时请考虑继承。
b.当两个类进行组合时,如果可以拟定为次级的类拥有另一个类的属性的时候,即父子级关系的时候,用继承,否则拟定的次级的类不能完全当做另一类的属性来使用的话,就采用复合。举例来说就是鸟和麻雀;汽车和轮胎。
多态
含义:
允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。(发送消息就是函数调用)

条件:
一、要有继承;
二、要有重写;
三、父类引用指向子类对象。

好处:
对已存在代码具有可替换性和可扩充性。
它在应用中体现了灵活多样的操作,提高了使用效率。
多态简化对应用软件的代码编写和修改过程,尤其在处理大量对象的运算和操作时,这个特点尤为突出和重要。

继承和多态的关系
继承:程序向上总结
将子类共同的行为和属性集中写到父类中,通过继承,所有子类都能自动获得这些属性和行为,大大减少了重复代码。
继承成为多态实现的基础。

多态:程序向下扩展
父类某些行为,子类进行继承重写,从而实现:同种行为,不同的实现。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值