IO流用到的设计模式

ops/2024/10/18 14:53:44/

IO流用到的设计模式

  • 装饰器(Decorator)模式 可以在不改变原有对象的情况下拓展其功能。例如,可以通过 BufferedInputStream(字节缓冲输入流)来增强 FileInputStream 的功能。
  • 适配器(Adapter Pattern)模式 主要用于接口互不兼容的类的协调工作。例如,InputStreamReader 使用 StreamDecoder (流解码器)对字节进行解码,实现字节流到字符流的转换,OutputStreamWriter 使用StreamEncoder(流编码器)对字符进行编码,实现字符流到字节流的转换
  • 工厂模式:Files 类的 newInputStream 方法用于创建 InputStream 对象(静态工厂)、 Paths 类的 get 方法创建 Path 对象(静态工厂)、ZipFileSystem 类(sun.nio包下的类,属于 java.nio 相关的一些内部实现)的 getPath 的方法创建 Path 对象(简单工厂)
  • 观察者模式。NIO 中的文件目录监听服务使用到了观察者模式,NIO 中的文件目录监听服务基于 WatchService 接口和 Watchable 接口。WatchService 属于观察者,Watchable 属于被观察者。

http://www.ppmy.cn/ops/94343.html

相关文章

2024年,除了幕布思维导图外三款好用的工具推荐!!

工作当中我们的成果都是靠着各种的工作汇报来体现的,其中就包括了excel、ppt和思维导图这类的形式了,是不是就需要给上级做这类的汇报体现工作的价值,而使用好用的一些工具可以让我们的工作事半功倍起来,所以今天整理了幕布思维导…

注册数据查询工具

注册数据查询工具:ICANN Lookup

爬虫配置代理:保护隐私有效地抓取数据

爬虫配置代理的详细指南 在进行网络爬虫时,使用代理可以帮助我们更有效地抓取数据,避免IP被封禁,并提高隐私保护。本文将详细介绍如何在爬虫中配置代理,包括不同的代理类型、如何选择合适的代理以及在Python中实现代理的具体步骤…

OpenAI 发布 GPT-4o 模型安全评估报告:风险等级为“中等”|TodayAI

OpenAI 近日发布了最新的 GPT-4o 系统卡,这是一份研究文件,详细介绍了公司在推出其最新 AI 模型之前所进行的安全措施和风险评估。根据该评估报告,GPT-4o 的总体风险等级被评定为 “中等” 。 GPT-4o 于今年 5 月首次公开发布。在其发布之前…

SQL Zoo 9-.Window functions

以下数据均来自SQL Zoo 1.Show the lastName, party and votes for the constituency S14000024 in 2017.(显示2017年选区“S14000024”的姓氏、政党和选票) SELECT lastName, party, votesFROM geWHERE constituency S14000024 AND yr 2017 ORDER BY…

Android 启动动画太生硬

跟 android:launchMode"singleTask"属性无关系 请禁用路由 ARouter.getInstance() .build(Routes.Main.MAIN) .withTransition(R.anim.activity_anim_in, R.anim.activity_anim_out).navigation() 正确做法是 val intent Intent(thisSplashActivity,MainActivit…

仿RabbiteMq实现简易消息队列正式篇(需求分析)

TOC 目录 MQ的实现方法 RabbitMq中的相关概念 消息队列系统模块划分 总体划分 服务端模块 数据管理模块 虚拟机数据管理模块 交换机路由模块 消费者管理模块 信道(通信)管理模块 连接管理模块 服务端BrokerServer模块 客户端模块 消费者管…

lvs学习篇

LVS:是一种负载均衡器,工作在osi四层,基于ip和端口实现转发数据包,其传输的流量最多可达传输层。 lvs的相关名词解释: RS:真实的后端服务器 CIP:客户端的ip VIP: 虚拟服务器面向客户端的ip,我们称为外网ip DIP: 虚拟服…