/*

* 装饰设计模式:

*  对一组对象的功能进行增强时,就能够使用该模式进行问题的解决;

* 装饰和继承都能实现一样的特点:  就是进行功能的扩转增强。

*

*/

public class TestIO4

{

public static void main(String[] args)

{

Person p = new Person();

NewPerson np = new NewPerson(p);

np.chifan();//使用增强后的功能.

}

}

//原有的类

classPerson

{

void chifan()

{

System.out.println("吃饭");

}

}

//装饰模式  第一种方式

//这个类的出现是为了增强Person类 而出现的

classNewPerson

{

private Person p;

NewPerson(Person p)

{

this.p = p;

}

public void chifan()

{

System.out.println("增强功能");

p.chifan();//原有功能;

System.out.println("增强功能");

}

}

//装饰模式另外一种方式

//这个类是为了增强Person的功能:

classNewPerson2 extendsPerson

{

public void chifan()

{

System.out.println("增强工恩呢该");

super.chifan();

System.out.println("增强功能");

}

}

-==========================================================================

public class TestIO4

{

private FileReader r;

//定义一个数组作为缓冲区。

private char[] buf = new char[1024];

//定义一个指针用于操作这个数组中的元素,当操作到最后一个元素后,指针应该归零。

private int pos = 0;

//定义一个计数器用于记录缓冲区中的数据个数,  当该数据减到0。就从原数据中继续获取 数据到缓冲区中。

private int count = 0;

TestIO4(FileReader r)

{

this.r = r;

}

}

Java——设计模式(装饰模式_IO)相关推荐

  1. java设计模式——装饰模式

    装饰模式也称为包装模式.结构型设计模式之一,其使用一种对客户端透明的方式动态的扩展对象的功能,同时它也是继承关系的一种替代方案之一. 装饰模式可以动态的给一个对象添加一些额外的职责.就增加功能功能来说 ...

  2. Java设计模式——装饰模式(装饰设计模式)详解

    装饰模式的定义与特点 装饰(Decorator)模式的定义:指在不改变现有对象结构的情况下,动态地给该对象增加一些职责(即增加其额外功能)的模式,它属于对象结构型模式. 装饰(Decorator)模式 ...

  3. Java设计模式 ---- 装饰模式

    一.什么是装饰模式? 装饰模式是一种用于替代继承的技术,它通过一种无须定义子类的方式给对象动态增加职责,使用对象之间的关联关系取代类之间的继承关系. 定义:动态地给一个对象增加一些额外的职责.就扩展功 ...

  4. java设计模式 ppt_Java设计模式(精品·公开课件).ppt

    Java设计模式---适配器模式 结构模式---适配器模式(Adapter)如何将两个不兼容的类纠合在一起使用,通常的解决方案是:修改各自类的接口,但是如果我们没有源代码,或者我们不愿意为了一个应用而 ...

  5. Java设计模式(7)装饰模式(Decorator模式)

    Decorator常被翻译成"装饰",我觉得翻译成"油漆工"更形象点,油漆工(decorator)是用来刷油漆的,那么被刷油漆的对象我们称decoratee.这 ...

  6. java设计模式之装饰模式_Java中的装饰器设计模式

    java设计模式之装饰模式 装饰器设计模式允许在运行时将附加职责或行为动态附加到对象. 它是一种结构模式,利用聚合来组合这些行为. 在本教程中,我们将学习实现装饰器模式. UML图: 让我们从装饰器模 ...

  7. 【Java设计模式】简单学装饰模式——来杯咖啡,先糖后奶

    目录 说明 目标 实现方式 应用场景 其他链接 说明 结构型模式之一,其他还有适配器模式.桥接模式.组合模式.外观模式.享元模式.代理模式 装饰者模式(Decorator Pattern)的精髓在于动 ...

  8. 装饰模式——初学JAVA设计模式

    文章目录 一.基本概念 模式角色 二.简单实例 实例一.变形金刚 类图 代码实现 结果截图 实例二.喜羊羊与灰太狼 类图 方式一:半透明模式 代码实现 结果截图 方式二:半透明模式+透明模式 代码实现 ...

  9. java设计模式学习笔记之装饰模式

    java设计模式学习笔记之装饰模式 尊重原创,转载请注明出处,原文地址: http://blog.csdn.net/qq137722697 这是一个使用策略模式和构建模式设计的网络请求框架,去看看吧& ...

  10. 大话设计模式-装饰模式(大鸟和小菜Java版)

    装饰模式:装饰模式指的是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能.它是通过创建一个包装对象,也就是装饰来包裹真实的对象.(百度百科) 这个模式让后期的修改变得极为简单,真的就高内 ...

最新文章

  1. 水稻微生物组时间序列分析精讲1-模式图与主坐标轴分析
  2. Windows下通过VNC远程访问Linux服务器,并实现可视化
  3. petalinux zynq spi_ZYNQ 系列 01 | PL 实现按键控制 LED(1)
  4. 【每周CV论文】深度学习文本检测与识别入门必读文章
  5. 几个小例子告诉你, 一行Python代码能干哪些事
  6. com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed
  7. 将MongoDB集成到您的Spring项目
  8. JSON(JavaScript Object Notation) 格式
  9. MFC小笔记:父子窗口传递消息
  10. 详解Python字符串编码格式
  11. 24小时改变你的人生 (1至12小时)很好的书,推荐大家有时间在网上看看。
  12. 验证集与测试集的区别
  13. 前馈电容的作用-DCDC
  14. 局域网简易聊天服务器&客户端
  15. SpringCloud学习(十八):Config分布式配置中心的介绍与搭建
  16. 给div加滚动条 div显示滚动条设置代码
  17. C#实战之CAD二次开发003:插入文字和插入图块
  18. 自定义Android键盘
  19. one-hot表示和分布式表示
  20. android图片识别代码,android orc 图片文档识别源代码 - 下载 - 搜珍网

热门文章

  1. sql语句中【模糊查询like的使用】
  2. c#中sqlhelper类的编写(一)
  3. 听一下牛人是怎样自学MIT计算机系全部课程的[转]
  4. 洛谷P3649 [APIO2014]回文串(回文自动机)
  5. mysql学习一 常用语句
  6. JavaSE--异常信息打印
  7. PlaceholderTextView
  8. UnityContainer中RegisterType与RegisterInstance的区别
  9. 用C#写XML类型的配置文件:
  10. jenkins教程菜鸟_Jenkins插件编译