摘要: 以下是个人总结内容的目录汇总 异常的使用 C# 中的“相等判断” C# 的流(Stream) .NET 中的序列化和反序列化(DataContract 序列化) Moq 的使用 阅读全文
posted @ 2025-03-29 09:24 hihaojie 阅读(30) 评论(0) 推荐(0)
摘要: 《C# 核心技术指南》 下列阅读笔记基于《C#7.0 核心技术指南》,部分章节尚未完成梳理。以下是已完成的章节: 第1章 C#和.NET Framework简介 第2章 C# 语言基础 第3章 在C#中创建类型 第4章 C#的高级特性 第5章 框架概述 第6章 框架基础 第7章 集合 第8章 LIN 阅读全文
posted @ 2025-01-14 23:26 hihaojie 阅读(157) 评论(0) 推荐(0)
摘要: Moq 的使用 Info 本文基于 Moq 官方快速入门:Quickstart · devlooped/moq Wiki · GitHub 本篇代码均基于如下接口和类型: public interface IFoo { Bar Bar { get; set; } string Name { get; 阅读全文
posted @ 2025-07-27 23:41 hihaojie 阅读(22) 评论(0) 推荐(0)
摘要: .NET 中的序列化和反序列化(DataContract 序列化) .NET Framework 中的序列号和反序列化方式多样,支持 4 种原生的序列化方式: 特性 数据契约序列化器 二进制序列化器 XmlSerializer IXmlSerializable 自动化级别 ⭐⭐⭐ ⭐⭐⭐⭐⭐ ⭐⭐⭐ 阅读全文
posted @ 2025-06-28 13:10 hihaojie 阅读(68) 评论(0) 推荐(0)
摘要: C# 的流(Stream) 流适配器 流适配器提供了处理高级类型(如文本和 XML)的方法。 可以看到,下面这些类均以“Reader”、“Writer”为后缀,而非 Stream。 ​TextReader​、TextWriter​ ​Stream​ 仅支持处理字节,为此 .NET 提供了高级类 Te 阅读全文
posted @ 2025-05-17 16:41 hihaojie 阅读(225) 评论(0) 推荐(0)
摘要: 第14章 C#7 的代码简洁之道 14.1 局部方法 在任何有若干语句出现的位置,都可以使用局部方法:方法、构造器、属性、索引器、事件访问器、终结器、匿名函数中甚至另一个嵌套的局部方法中。 局部方法和普通方法的声明方法基本一致,但有如下限制条件: 不能有访问修饰符(public、private 等) 阅读全文
posted @ 2025-04-17 23:05 hihaojie 阅读(44) 评论(0) 推荐(0)
摘要: 第13章 引用传递提升执行效率 13.2 ref 局部变量和 ref return 13.2.1 ref 局部变量 在 C#7 之前,ref 仅用于方法参数;自 C#7 开始,ref 可以创建局部变量!它的用法如下: int x = 10; ref int y = ref x; x++; y++; 阅读全文
posted @ 2025-04-16 23:35 hihaojie 阅读(46) 评论(0) 推荐(0)
摘要: 第12章 分解与模式匹配 12.1 分解元组 分解元组,即将元组的元素分解、复制给其他变量。下面是一个元组分解的示例: var tuple = (10, "text"); // 创建一个元组类型 (int, string) var (a, b) = tuple; // 隐式地将元组分解到两个新变量 阅读全文
posted @ 2025-04-13 23:02 hihaojie 阅读(11) 评论(0) 推荐(0)
摘要: 第11章 使用元组进行组合 11.2 元组字面量和元组类型 元组看作 CLR 引入的一些新类型,然后提供了相应的语法糖,使得新类型更易用。 易用包括两个层面:声明和构建。 11.2.1 语法 C#7 引入了两点新语法: 元组字面量:每个元素都有一个 值 和一个可选名称 下图表示的是一个 元组实例 ​ 阅读全文
posted @ 2025-04-10 23:00 hihaojie 阅读(31) 评论(0) 推荐(0)
摘要: 第10章 简洁代码的特性“盛宴” 10.1 using static 指令 10.1.1 引入静态成员 using static 指令可以简化 静态 方法的调用。 使用该指令后,以下几种成员可以通过名称直接引用,无需附带类型名: 静态字段和属性。 静态方法。 枚举值。 嵌套类型。 如下两段代码等价, 阅读全文
posted @ 2025-04-09 22:34 hihaojie 阅读(36) 评论(0) 推荐(0)
摘要: 第9章 字符串特性 9.1 .NET 中的字符串格式化回顾 Info 相关内容请参考第6章 框架基础 9.1.1 简单字符串格式化 下面是使用格式化字符串的一个简单例子: // C#5 的旧格式化代码 Console.Write("What's your name? "); string name 阅读全文
posted @ 2025-04-08 22:58 hihaojie 阅读(53) 评论(0) 推荐(1)
摘要: 第8章 极简属性和表达式主体成员 8.1 属性简史 C# 的属性随着语言的发展,其功能、语法也变得多样化。下面是它的演化: C#1:支持最基础的属性写法; public sealed class Point { private double x, y; public double X { get { 阅读全文
posted @ 2025-04-06 23:19 hihaojie 阅读(40) 评论(0) 推荐(0)