组合与继承
2016-04-12 16:45
197 查看
有这样一个类:
现在希望定义一个Head类,也想实现Look的功能,应该使用()方法,实现代码重用。 正确答案: B
A.继承
B.组合
C.模板
D.过滤
答案解析: 组合是在新类中以原有类的对象作为数据成员,继承是在不改变现有的类的基础上,采用现有类的形式并在其中添加新代码,组合一般用于在新类中使用现有类的功能而不是他的接口的情况,就是新类用户看到的只是为新类所定义的接口。而继承则是用于在新类需要向基类转化的情况(多态),这也是组合和继承使用的最清晰的判断方法。
结合本题分析,我们只需让眼睛作为头的一个成员即可,而让头去继承眼睛的特性是没有必要的。
因此这道题选择B
class Eye { public: void Look(void); };
现在希望定义一个Head类,也想实现Look的功能,应该使用()方法,实现代码重用。 正确答案: B
A.继承
B.组合
C.模板
D.过滤
答案解析: 组合是在新类中以原有类的对象作为数据成员,继承是在不改变现有的类的基础上,采用现有类的形式并在其中添加新代码,组合一般用于在新类中使用现有类的功能而不是他的接口的情况,就是新类用户看到的只是为新类所定义的接口。而继承则是用于在新类需要向基类转化的情况(多态),这也是组合和继承使用的最清晰的判断方法。
结合本题分析,我们只需让眼睛作为头的一个成员即可,而让头去继承眼睛的特性是没有必要的。
因此这道题选择B
相关文章推荐
- HM编码器代码阅读(1)——介绍以及相关知识
- uploadify使用记录
- js第三方
- 查看测试给的log日志的方法
- Ubuntu 源码安装最新版本 gcc 5.x版本
- iOS之轻松上手block(下)
- 第7周项目3多文件组织类的程序
- javascript属性方法访问
- 【数据结构】Stack 栈(更新时间:2016-04-13)
- CATransition 转场动画
- @用法
- ListView上拉加载更多数据
- Android的ListView多选删除Demo
- jQuery中用el表达式的字符串取整问题
- linux 内核模块开发注意事项
- hdu2242 考研路茫茫——空调教室
- Python的OO思想
- Git专题--Git客户端配置及使用
- hdu2242 考研路茫茫——空调教室
- C++和Lua相互传递数据