装饰设计模式和继承之间的区别
来源:互联网 发布:淘宝店铺被屏蔽怎么办 编辑:程序博客网 时间:2024/06/06 10:01
这里记录自己学习过程中的装饰设计模式。
什么是装饰设计模式:
当想要对已有的对象进行功能增强时,
可以定义类,将已有对象传入,基于已有的功能,并提供加强功能。
那么自定义的该类称为装饰类。
装饰类通常会通过构造方法接收被装饰的对象。
并基于被装饰的对象的功能,提供更强的功能。
//共同的接口interface Coder { public void code();}//被装饰类class Student implements Coder { @Override public void code() { System.out.println("javase"); System.out.println("javaweb"); }}//装饰类class TraineerStudent implements Coder { private Student s;//获取到被包装的类的引用 public TraineerStudent(Student s) {//通过构造函数创建对象的时候,传入被包装的对象 this.s = s; } @Override public void code() {//对其原有功能进行升级 s.code(); System.out.println("数据库"); System.out.println("ssh"); System.out.println("安卓"); System.out.println("....."); }}以上只是简单说明一下,在JAVA IO中用了很多增强 如:FileRead中read()方法 只是一个一个字节去读,为了读得更快在BufferedReader就增强了read()方法而产生了reandLine()一行一行的去读。
与继承之间的区别:
装饰模式比继承要灵活。避免了继承体系臃肿。而且降低了类于类之间的关系(耦合性)。
装饰类因为增强已有对象,具备的功能和已有的是相同的,只不过提供了更强功能。所以装饰类和被装饰类通常是都属于一个体系中的。
0 0
- 装饰设计模式和继承之间的区别
- 装饰设计模式和继承的区别
- 装饰模式设计-装饰类和继承类的区别
- 继承,装饰者模式和动态代理之间的区别
- java之装饰设计模式和继承的简单区别
- java之装饰设计模式和继承的简单区别
- 设计模式之间区别 (2) 装饰者模式和继承
- 装饰设计模式_装饰和继承的区别_字节流_读取键盘录入
- Java基础---Java---IO流-----BufferedReader、BufferedWriter、缓冲区、装饰设计模式及和继承的区别
- 21-IO流-19-IO流(字符流-缓冲区-装饰设计模式和继承的区别)
- (转)java之装饰设计模式和继承的简单区别
- Java基础---Java---IO流-----BufferedReader、BufferedWriter、缓冲区、装饰设计模式及和继承的区别
- 代理模式和装饰模式之间的区别
- JAVA设计模式-装饰设计模式-继承体系的由来和装饰类的优化
- 黑马程序员:装饰设计模式介绍及装饰模式与继承关系的区别
- 装饰设计模式和代理设计模式的区别
- java 之 装饰设计模式 和继承的优缺点
- 设计模式--代理模式--以及和装饰模式的区别
- 数码管与中断系统知识笔记
- UVA 10534最长上升子序列运用
- D3画个音乐播放器
- SearchHelp Listbox dialog
- request对象和response对象
- 装饰设计模式和继承之间的区别
- 远指针和近指针,巨指针
- AOP--Filter使用,过滤器和拦截器的区别
- Python中rpyc的使用简介
- Mac终端操作Mysql,以及Mysql的操作
- mybatis传入字符串进行比较
- 时间复杂度和空间复杂度
- iOS - 解决fatal: unable to access Could not resolve host: github.com
- 视频,音频,相册,