IO 流、委托、事件
一、 IO 流数据传输通道1. IO 流核心基础概念本质Stream流程序与外部设备之间数据传输的通道核心作用完成内存、磁盘、网络之间的数据读写交互。2. 字节流底层基类 Stream操作二进制 byte []字节流是所有 IO 操作的底层基础直接操作二进制字节无编码概念支持任意格式文件分为 4 大类FileStream 文件流作用读写本地磁盘二进制文件适用场景图片、视频、exe 程序、压缩包、任意非文本 / 文本文件核心方法Read()、Write()、ReadByte()、WriteByte()。BufferedStream 缓冲流作用为其他流增加缓冲区减少频繁磁盘 IO 访问大幅提升读写性能使用方式包裹 FileStream、网络流搭配使用不单独创建。MemoryStream 内存流作用数据读写仅操作内存全程不读写磁盘适用场景临时二进制缓存、图片内存处理、接口字节中转。NetworkStream 网络流作用基于 TCP/IP 协议传输原始字节搭配组件Socket、TcpClient、TcpListener用于网络通信收发数据。3. 字符流文本专用封装编码自动转换字符流属于上层包装流底层依然依赖字节流专门处理文本自动封装UTF8/GBK编码转换仅两类StreamReader 字符读取器底层内部包装Stream字节流自动处理文字编码用途读取 txt 文档、日志文本、纯文本接口返回常用方法ReadLine()逐行读取、ReadToEnd()一次性读取全部文本。StreamWriter 字符写入器底层包装字节流自动编码转换用途写入文本日志、生成 txt 文件、控制台输出封装常用方法Write()无换行写入、WriteLine()带换行写入。4. 字节流 vs 字符流 核心区分要点面试高频字节流万能处理所有文件操作byte[]字节数组无编码转换逻辑字符流仅限纯文本文件自动转换char/string字符串内置编码处理层级顺序字节流是底层基础缓冲流、字符流都是上层包装流必须依赖字节流创建。二、C# 委托方法的容器回调底层核心委托是 C# 实现回调、多播、Lambda 的基础本质是一种存储 / 传递方法的特殊数据类型思维导图分为 4 大模块1. 自定义委托 delegate定义规则使用delegate关键字修饰是没有方法体的方法类型本质等同于自定义数据类型可以像变量一样存储、传递方法基础三步用法声明自定义委托类型规定方法返回值与参数委托变量赋值已有普通方法委托变量 方法名调用委托变量执行绑定的方法委托变量()。2. 匿名方法Lambda 表达式无需单独定义方法直接用代码块赋值给委托简化开发基础格式() { 代码块 };简写规则单个入参可省略括号x { Console.WriteLine(x); }单行返回逻辑可省略return与大括号x x * 2使用场景直接赋值给委托变量省去单独定义方法的冗余代码。3. 多播委托一个委托变量可以绑定多个方法实现批量执行拼接语法追加绑定方法、-移除已绑定方法执行规则触发时按照绑定顺序依次执行全部方法面试坑点带返回值的多播委托最终仅返回最后一个绑定方法的返回值前面方法返回值会被丢弃。4. 系统内置通用委托无需手写 delegate框架内置两套泛型委托开发 90% 场景无需自定义 delegateAction 系列无返回值支持 0~16 个泛型入参示例ActionListstringFunc 系列带返回值最后一个泛型参数固定代表返回值示例Funcint, bool传入 int返回 bool三、C# 事件安全封装的委托消息通知标准方案事件底层完全基于委托封装是实现订阅发布模式、窗体控件通知的标准方案。1. 事件底层本质底层对委托做一层安全封装依托委托能力实现核心价值提供安全的订阅 / 触发机制限制外部直接修改委托变量仅允许绑定 / 解绑方法。2. 事件三大核心操作事件仅允许外部通过、-操作底层对应访问器订阅绑定事件 方法/委托底层对应add访问器d.OnShow d.Test;取消订阅事件 - 方法/委托底层对应remove访问器d.OnShow - d.Test1;触发规则仅事件所在类内部可以直接调用触发外部无法手动执行安全性远高于原生委托。3. 多订阅多播特性事件天然支持多播和多播委托行为一致同一个事件可以绑定任意多个方法触发事件时严格按照绑定先后顺序依次执行所有订阅方法典型场景窗体按钮 Click 事件同时绑定多个执行逻辑。四、委托 vs 事件安全层面委托变量外部可直接赋值覆盖全部方法事件仅允许/-无法外部清空、覆盖使用场景委托多用于内部回调、方法传参事件用于对外暴露消息通知。调用权限委托任意地方都能调用执行事件只能在定义类内部触发。五、完整知识体系总结IO 流底层字节流处理二进制上层字符流处理文本缓冲流优化性能所有文件、网络、内存读写都基于 Stream委托存储传递方法的数据类型支持 Lambda、多播内置 Action/Func 简化开发事件封装委托的安全订阅模型项目中消息通知、UI 交互标准实现方案。

相关新闻

网络安全漏洞挖掘合规指南:技术、流程与法律红线

网络安全漏洞挖掘合规指南:技术、流程与法律红线

1. 项目概述:当“挖洞”遇上“红线”在网络安全这个行当里,“漏洞挖掘”这四个字,对从业者而言,既是技术能力的勋章,也可能是职业生涯的“达摩克利斯之剑”。我干了十几年安全,从最初拿着扫描器到处乱跑&am…

2026/7/6 1:13:43阅读更多 →
国内EMBA排行榜|2026综合实力TOP5权威评测

国内EMBA排行榜|2026综合实力TOP5权威评测

随着国内企业全球化布局、数字化转型进程持续加快,内地科创、金融、高端制造等领域的企业高管与决策者,对高品质境外中英双语EMBA项目的需求持续攀升。相较于传统内地EMBA,优质境外双语EMBA兼具国际化教学体系、全球顶尖师资、跨境人脉资源与…

2026/7/6 1:13:43阅读更多 →
OpenHarmony Toggle、Radio、Checkbox、Slider 交互选择组件全场景开发(API Version23 + 适配版)

OpenHarmony Toggle、Radio、Checkbox、Slider 交互选择组件全场景开发(API Version23 + 适配版)

摘要Toggle、Radio、Checkbox、Slider 是 ArkUI 标准交互选择类组件,广泛用于设置页面开关、单选选项、多选勾选、数值滑动调节等表单交互场景。API Version23 重构选择组件触摸响应、状态绑定、动画渲染、焦点切换逻辑,统一控件尺寸规范,修复…

2026/7/6 1:08:43阅读更多 →
2024年全国外贸工艺品选购指南:3招教你挑对正规设计平台

2024年全国外贸工艺品选购指南:3招教你挑对正规设计平台

核心速览要是预算充足,想找专业靠谱、功能全面且能提前把握行业趋势的平台,CA9可以重点考虑,它一套体系下来虽然价格不低,但投入产出比高,能给企业带来可观的业务增长。预算中等的话,一些大厂的平台也有其优…

2026/7/6 3:14:18阅读更多 →
【柴油】热力学柴油循环的模拟与分析【含Matlab源码 15882期】

【柴油】热力学柴油循环的模拟与分析【含Matlab源码 15882期】

💥💥💥💥💥💥💥💥💞💞💞💞💞💞💞💞💞Matlab领域博客之家💞&…

2026/7/6 3:14:18阅读更多 →
学位论文质量护航!2026全能型AI写作辅助网站终极指南

学位论文质量护航!2026全能型AI写作辅助网站终极指南

2026 年 AI 论文写作工具已进入全流程闭环 学术合规时代,千笔 AI(综合评分 99 分)中文学术场景标杆;Grammarly Academic与Elicit为英文论文写作首选;按需求匹配度 - 数据可信度 - 成本承受力三维模型选型,…

2026/7/6 3:14:18阅读更多 →
2026年必选:舒适睡眠的秘密,优质苦荞壳枕头供应商推荐

2026年必选:舒适睡眠的秘密,优质苦荞壳枕头供应商推荐

在快节奏的生活环境中,优质的睡眠变得尤为重要。随着人们对健康生活方式追求的不断升级,市场上涌现出越来越多的功能性枕芯产品,旨在帮助改善人们的睡眠质量。其中,以苦荞麦壳作为填充物的枕头凭借其独特的透气性和支撑性赢得了众…

2026/7/6 3:14:18阅读更多 →
图论算法之深度遍历岛屿问题

图论算法之深度遍历岛屿问题

200. 岛屿数量 - 力扣&#xff08;LeetCode&#xff09; class Solution {public int numIslands(char[][] grid) {int res 0;for(int r 0; r< grid.length; r){for(int c 0; c<grid[0].length; c){if(grid[r][c] 1){res;dfs(grid, r,c);}}}return res;}//从岛屿位置…

2026/7/6 3:09:17阅读更多 →
HarmonyOS ArkTS九宫数独项目架构设计

HarmonyOS ArkTS九宫数独项目架构设计

仓库源码地址&#xff1a;https://gitcode.com/feng8403000/math_app_study 一、项目概述 本项目是一个基于HarmonyOS ArkTS框架开发的数字能力训练应用&#xff0c;包含10款数字能力训练游戏和1款九宫数独终极挑战游戏。应用采用深色主题设计&#xff0c;通过关卡制度实…

2026/7/6 3:09:17阅读更多 →
从GitHub安全案例解析常见漏洞与防护实践

从GitHub安全案例解析常见漏洞与防护实践

1. 项目概述&#xff1a;从GitHub Trending看安全实战 最近在GitHub Trending上看到一个项目&#xff0c;叫 skills4/skills &#xff0c;它因为一些安全漏洞案例被大家讨论。这其实是一个挺典型的场景&#xff1a;一个旨在展示或教授某种技能的仓库&#xff0c;本身却成了安…

2026/7/5 0:01:08阅读更多 →
MLT 2026启示:因果推理与概率建模驱动下一代LLM应用

MLT 2026启示:因果推理与概率建模驱动下一代LLM应用

# MLT 2026启示&#xff1a;因果推理与概率建模驱动下一代LLM应用## 一、背景与挑战&#xff1a;从“黑箱预测”到“可信推理”2026年6月&#xff0c;第7届机器学习与趋势国际会议&#xff08;MLT 2026&#xff09;将在悉尼召开。会议议程中&#xff0c;“因果与可解释机器学习…

2026/7/6 2:48:33阅读更多 →
通达OA SQL注入漏洞深度剖析:从手工注入到自动化利用与防御

通达OA SQL注入漏洞深度剖析:从手工注入到自动化利用与防御

1. 项目概述与漏洞背景最近在梳理一些历史OA系统的安全风险时&#xff0c;通达OA v11.6版本中的一个老漏洞又进入了我的视线。这个漏洞位于/general/bi_design/appcenter/report_bi.func.php文件中&#xff0c;是一个典型的SQL注入点。虽然这个漏洞的利用方式看起来并不复杂&am…

2026/7/6 0:10:35阅读更多 →
Seraphine:基于LCU API的英雄联盟智能游戏助手技术解析与应用指南

Seraphine:基于LCU API的英雄联盟智能游戏助手技术解析与应用指南

Seraphine&#xff1a;基于LCU API的英雄联盟智能游戏助手技术解析与应用指南 【免费下载链接】Seraphine 英雄联盟战绩查询工具 项目地址: https://gitcode.com/gh_mirrors/se/Seraphine 技术架构先行&#xff1a;官方接口的合规应用 你是否曾在BP阶段手忙脚乱&#x…

2026/7/6 0:03:39阅读更多 →
多协议远程连接管理工具mRemoteNG:告别混乱,统一你的远程桌面管理

多协议远程连接管理工具mRemoteNG:告别混乱,统一你的远程桌面管理

多协议远程连接管理工具mRemoteNG&#xff1a;告别混乱&#xff0c;统一你的远程桌面管理 【免费下载链接】mRemoteNG mRemoteNG is the next generation of mRemote, open source, tabbed, multi-protocol, remote connections manager. 项目地址: https://gitcode.com/gh_m…

2026/7/6 0:03:39阅读更多 →
COUNT(DISTINCT) 与 GROUP BY 去重统计:5 亿数据量下的性能实测与选型指南

COUNT(DISTINCT) 与 GROUP BY 去重统计:5 亿数据量下的性能实测与选型指南

COUNT(DISTINCT) 与 GROUP BY 去重统计&#xff1a;5 亿数据量下的性能实测与选型指南在数据分析和处理领域&#xff0c;去重统计是最基础也是最频繁使用的操作之一。当数据量达到亿级规模时&#xff0c;不同的去重统计方法在性能上可能产生天壤之别。本文将基于 5 亿行数据的实…

2026/7/6 0:03:39阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时&#xff0c;发现推理速度只有可怜的 1-2 FPS&#xff0c;而别人的演示视频却能跑到 30 FPS 以上&#xff0c;那么问题很可能不在模型本身&#xff0c;而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后&#xff0c;会直接使用官方示例…

2026/7/5 1:30:27阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一&#xff1a;为什么你需要了解 Coze 和 Dify&#xff1f;如果你对 AI 应用开发感兴趣&#xff0c;但一看到“大模型”、“智能体”、“工作流”这些词就头疼&#xff0c;觉得门槛太高&#xff0c;那这篇文章就是为你准备的。很多开发者&#xff0c;包括我自己&#…

2026/7/5 3:48:10阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会&#xff1a;配图一直是个让人头疼的问题。2026年&#xff0c;AI生图工具已经非常成熟了&#xff0c;但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1&#xff1a;速度之王2026年6月11日&#xff0c…

2026/7/5 3:48:09阅读更多 →