黑马程序员技术交流社区
标题:
封装继承和多态
[打印本页]
作者:
Neverlandxu
时间:
2015-10-15 23:30
标题:
封装继承和多态
封装
:封装的意义,在于明确标识出允许外部使用的所有成员函数和数据项,或者叫
接口
。
有了封装,就可以明确区分
内外
,使得类实现者可以修改封装
内
的东西而不影响
外
部调用者;而外部调用者也可以知道自己不可以碰哪里。这就提供一个良好的合作基础——或者说,只要
接口
这个基础约定不变,则代码改变不足为虑。
继承+多态
:
先说
继承
:继承同时具有两种含义:其一是继承基类的方法,并做出自己的扩展——号称解决了代码重用问题;其二是
声明
某个子类
兼容
于某基类(或者说,接口上完全
兼容
于基类),外部调用者可无需关注其差别(内部机制会自动把请求派发[dispatch]到合适的逻辑)。
再说
多态
:基于对象所属类的不同,外部对同一个方法的调用,实际执行的逻辑不同。
很显然,多态实际上是
依附于继承的第二种含义
的。让它与封装、继承这两个概念并列,是
不符合逻辑
的。不假思索的就把它们当作可并列概念使用的人,显然是从一开始就被误导了。
作者:
帮助信息
时间:
2015-10-15 23:52
封装到底是个什么东西- -
作者:
Neverlandxu
时间:
2015-10-16 00:12
帮助信息 发表于 2015-10-15 23:52
封装到底是个什么东西- -
可以理解成打包,打包完之后告诉你这个东西可以干什么,有哪些东西,怎么用,你直接用就可以,不需要知道他的内部原理。
简单地说,把打电话,发短信,拍照等功能封装到手机里,给你个说明书告诉你怎么用,你不需要知道手机内部是怎么运行的,
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2