首页 > 其他 > 详细

装饰模式和继承的区别

时间:2018-01-25 14:06:46      阅读:231      评论:0      收藏:0      [点我收藏+]
MyReader 专门用于读取数据的抽象类
|--MyTextReader
|--MyBufferedTextReader
|--MyMp3Reader
|--MyBufferedMp3Reader
如果多个这样的二级类,每个二级类下面又有3级类,会让这个体系看起来很臃肿,这些3级类看起来又有共同的特点,那么考虑用装饰模式
class MyBufferedReader{
// MyBufferedReader(MyTextReader myTextReader){
//扩展型很差
// }
MyBufferedReader(MyReader myReader){
//这里用到了参数多态
}
}
如果用了装饰模式,上述体系变成如下模样
MyReader 专门用于读取数据的抽象类
|--MyTextReader
|--MyMp3Reader
|--MyBufferedReader

装饰模式和继承的区别

原文:http://blog.51cto.com/13579086/2064993

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!