码迷,mamicode.com
首页 > 其他好文 > 详细

装饰和继承的区别

时间:2014-07-23 12:11:06      阅读:184      评论:0      收藏:0      [点我收藏+]

标签:os   re   c   代码   ar   har   

子类用的技术都是一样的,那么有必要给他单独定一个子类吗?

这就是装饰模式生成的原因。

 

class MyBufferReader{

MyBufferedReader(被提高效率的类1 class){}

MyBufferedReader(被提高效率的类2 class){}

MyBufferedReader(被提高效率的类3 class){}

}

--------------------------------

优化后的代码A:

class MyBufferReader extends 父类{

private 父类 class;

MyBufferedReader(父类 class){}

//组合结构

}

---------------------------------

装饰模式,比继承要灵活;降低了类与类之间的关系。

装饰类因为增强已有对象,具备的功能和已有的对象是相同的,只不过提供了更强的功能。所以装饰类和被装饰类,通常都属于一个体系中。

 

-----------------------

装饰类,覆盖Reader类中的抽象方法

public void close(){

class.close();

}

 

public int read(char[] buf, int off, int len){

return r.read(buf, off, len);

}

 

---------------------------------

装饰和继承的区别,布布扣,bubuko.com

装饰和继承的区别

标签:os   re   c   代码   ar   har   

原文地址:http://www.cnblogs.com/nophy/p/3862151.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!