为什么要优先使用组合 而不是继承?
来源:互联网 发布:vivo软件招聘 编辑:程序博客网 时间:2024/05/17 01:41
继承具有如下优点:
实现新的类非常容易,因为基类的大部分功能都可以通过继承关系自动赋予派生类;修改或者扩展继承来的实现非常容易;只要修改父类,派生的类的行为就同时被修改了。初学面向对象编程的人会认为继承真是一个好东西,是实现复用的最好手段。但是随着应用的深入就会发现继承有很多缺点:继承破坏封装性。基类的很多内部细节都是对派生类可见的,因此这种复用是“白箱复用”;如果基类的实现发生改变,那么派生类的实现也将随之改变。这样就导致了子类行为的不可预知性;从基类继承来的实现是无法在运行期动态改变的,因此降低了应用的灵活性。
本文来自CSDN博客, 原文出处:http://blog.csdn.net/ldblog/archive/2009/04/07/4055079.aspx
0 0
- 为什么要优先使用组合 而不是继承?
- 为什么优先使用组合而不是继承
- 优先使用组合 而不是继承?
- 优先使用对象组合,而不是使用继承
- 优先使用对象组合而不是类继承
- 优先使用对象组合,而不是类继承
- 优先使用组合对象,而不是继承"的理解
- 设计模式(笔记)优先使用对象组合而不是类继承
- 为什么Java中的密码优先使用 char[] 而不是String?
- 在Angular.js使用组合+依赖注入而不是继承
- NSString 为什么要使用copy,而不是retain?
- JDBC为什么要使用PreparedStatement而不是Statement
- JDBC为什么要使用PreparedStatement而不是Statement
- JDBC为什么要使用PreparedStatement而不是Statement
- 为什么要使用SLF4J而不是Log4J
- 为什么要使用SLF4J而不是Log4J
- 为什么要使用事件而不是委托变量?
- 为什么要使用SLF4J而不是Log4J
- linux下清空文件内容方法
- html输入构输入验证码达到一定位数触发事件及回车时触发事件
- 用Windows自带的画笔工具调整图片的大小
- 开发技术前线 第十一期
- linux计划任务 Crontab
- 为什么要优先使用组合 而不是继承?
- 编辑距离 python
- Android-BLE 2. 蓝牙的权限使用
- Android-animation-View Animation
- MATLAB GUI界面大小 自动适应
- 服务器端git的安装和gitosis安装
- Services 翻译第二集
- Android常用组件
- Android 中的导入(import)出错