装饰模式案列(OutputStream)

使用装饰模式进行装饰OutputStream

写入文件成功

装饰类继承OutputStream类

DecorOutputStream
package com.wbg.springRedis.decorator;import java.io.IOException;
import java.io.OutputStream;public class DecorOutputStream extends OutputStream {private OutputStream os;private double index = 0;private double sum = 0;public DecorOutputStream(OutputStream os) {this.os = os;}@Overridepublic void write(int b) throws IOException {this.index++;double Progress = this.index/this.sum*100;System.out.println("写入进度"+(int)Progress+"%");os.write(b);}@Overridepublic void write(byte[] b) throws IOException {this.sum = b.length;System.out.println("开始写入文件");super.write(b);System.out.println("写入文件完毕");}
}

测试:

 public static void main(String[] args) throws IOException {FileOutputStream stream = new FileOutputStream(new File("g:/ccc.txt"));DecorOutputStream los = new DecorOutputStream(stream);los.write("hello, word!".getBytes());los.close();}

posted @ 2018-12-28 09:48 韦邦杠 阅读(...) 评论(...) 编辑 收藏

装饰模式案列(OutputStream)相关推荐

  1. SpringSecurity的简单使用使用案列说明

    SpringSecurity Spring Security是 Spring提供的安全认证服务的框架. 使用Spring Security可以帮助我们来简化认证 和授权的过程.官网:https://s ...

  2. JDBC的入门案列以及JDBC的对事务的管理

    JDBC的概念 Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中 ...

  3. [Java基础]线程同步之卖票案列分析

    案列: 卖票. 需求: 某电影院目前正在上映国产大片,共有100张票,而它有3个窗口卖票,请设计一个程序模拟该电影院卖票. 代码如下: package SellTicketPack;public cl ...

  4. Linux下 RPM 包和Deb包的安装(代码指令+案列)

    目录 案列一:(Centos下)RPM包的安装: --tree的安装 案列二:(Kali linux 下)安装Deb包: --安装dpkg -- 安装 gdebi RPM [1]  是Red-Hat ...

  5. STP安全特性——bpduguard特性、 bpdufilter特性、guard root 特性、loopguard技术总结与案列(附图,建议PC观看)

    目录 一.bpduguard特性: 总结: 案列: 过程分析: 如何防御? 二.bpdufilter特性: 总结: 三.guard root特性: 总结: 案列: 四.loopguard技术(请详见一 ...

  6. 客户组网服务案列_山西seo关键词排名优化案列

    山西seo关键词排名优化案列 di0o8e90t 山西seo关键词排名优化案列 在为客户服务的过程中发现推广,究竟是怎么推广的.它可以提升推广的成本费,而竟价必须很多的成本费.的汉语界定是优化.关键目 ...

  7. 客户组网服务案列_信息报道丨云浮支撑服务中心2020年第五期

    本期导读 1.云浮支撑服务中心副总经理杨先权带领渠道中心到新兴开展调研 2.云浮移动.云浮铁通就提升装维入格管理及随销业务召开沟通交流会 3.云浮支撑服务中心副总经理牛占堂带领支撑部到金山网格进行网格 ...

  8. innodb--聚簇索引真实案列排序问题

    一万行数据,排序: select * from goods order by id limit 100;    =====>id是索引 时间时:0.04 sec 2. select * from ...

  9. 深入继承之抽象类和接口综合分析及完整案列解说(一)

    首先感谢园里的一位前辈anytao.cnblogs.com ,他对面向抽象类和接口编程作出比较完善的总结.下面的总结是直接Copy他的原话. 一.相同点 ● 都不能被直接实例化,都可以通过继承实现其抽 ...

  10. 快速制作响应式的个人主页案列

    博哥教你使用纯CSS制作酷炫的个人名片效果 Author:博哥 时间:2023-01-11 前言 该文档对应的视频教程,请移步B站观看! 去B站播放该教程 一.需要掌握的前置知识和用的素材 1.1.前 ...

最新文章

  1. 重新精读《Java 编程思想》系列之final关键字
  2. matlab二阶差分函数,实验5图像分割
  3. Webdriver使用Chrome模拟手机浏览器测试移动版网站
  4. thymeleaf 学习笔记-基础篇(中文教程)
  5. ABP vNext 自动注入,暗藏天坑如斯
  6. mysql开启布隆过滤器_海量数据去重之布隆过滤器
  7. python语言单行注释符_云计算开发学习笔记:Python3注释
  8. 分别用函数和带参的宏,从三个数中找出最大的数。
  9. php实现数据排序算法,PHP实现数据结构中的排序算法_PHP教程
  10. android启动服务的生命周期,Android Service的两种启动方式以及生命周期
  11. Gym - 102163M
  12. WBE15—HttpServletRequest
  13. 电脑技巧:Win10操作系统关闭这几个功能,可以大幅度提升电脑的运行速度
  14. strchr()函数用法及其详解
  15. AVUE一些简单用法——avue-crud子表单
  16. 支付宝自动跳入转账页面
  17. 模拟购物车购物过程python,用函数模拟简单的购物车(Python)
  18. 【深度学习】网络训练的原理:什么是梯度下降?学习率的作用是什么?
  19. 前端开发薪资之各地区对比(图文分析)
  20. ALSA 音频开发部分基础知识

热门文章

  1. 决策树 Decision Tree
  2. cognos数据源配置修改oracle,Cognos 新建数据源报错(原创)
  3. 为什么天才容易患阅读障碍症_王俊凯因“耳石症”缺席跨年晚会,这种病与熬夜玩手机有关?...
  4. Leetcode392.判断子序列
  5. Unity3D(六)光照系统
  6. linux+git登陆,图解如何在Linux上配置git自动登陆验证
  7. mysql block是什么,php – MySQL PDO – try {block}里面应该是什么?
  8. mac下nginx安装及与tomcat简单配置
  9. 如果有人问你 Dubbo 中注册中心工作原理,就把这篇文章给他
  10. myBatis无法用log4j输出日志