随笔分类 -  .NET:C#各版本新功能

摘要:系列目录 【已更新最新开发文章,点击查看详细】 在 C# 3.0 及更高版本,当属性访问器中不需要任何其他逻辑时,自动实现的属性会使属性声明更加简洁。 它们还允许客户端代码创建对象。 当你声明以下示例中所示的属性时,编译器将创建仅可以通过该属性的 get 和 set 访问器访问的专用、匿名支持字段。 阅读全文
posted @ 2019-07-11 15:46 张传宁 阅读(844) 评论(0) 推荐(0) 编辑
摘要:系列目录 【已更新最新开发文章,点击查看详细】 属性是一种成员,它提供灵活的机制来读取、写入或计算私有字段的值。 属性可用作公共数据成员,但它们实际上是称为访问器的特殊方法。 这使得可以轻松访问数据,还有助于提高方法的安全性和灵活性。 属性概述 属性允许类公开获取和设置值的公共方法,而隐藏实现或验证 阅读全文
posted @ 2019-07-11 09:56 张传宁 阅读(1607) 评论(0) 推荐(0) 编辑
摘要:系列目录 【已更新最新开发文章,点击查看详细】 在 C# 中,协变和逆变能够实现数组类型、委托类型和泛型类型参数的隐式引用转换。 协变保留分配兼容性,逆变则与之相反。 以下代码演示分配兼容性、协变和逆变之间的差异。 对方法组的协变和逆变支持允许将方法签名与委托类型相匹配。 这样,不仅可以将具有匹配签 阅读全文
posted @ 2019-07-10 21:00 张传宁 阅读(538) 评论(0) 推荐(0) 编辑
摘要:系列目录 【已更新最新开发文章,点击查看详细】 迭代器可用于逐步迭代集合,例如列表和数组。 迭代器方法或 get 访问器可对集合执行自定义迭代。 迭代器方法使用 yield return 语句返回元素,每次返回一个。 到达 yield return 语句时,会记住当前在代码中的位置。 下次调用迭代器 阅读全文
posted @ 2019-07-10 20:41 张传宁 阅读(504) 评论(0) 推荐(0) 编辑
摘要:系列目录 【已更新最新开发文章,点击查看详细】 可以为 null 的类型是 System.Nullable<T> 结构的实例。 可以为 null 的类型可表示一个基础类型的所有值 T,还可以再表示一个 null 值。 基础类型 T 可以是任何不可为 null 的值类型。 T 不能是引用类型。 例如, 阅读全文
posted @ 2019-07-06 16:25 张传宁 阅读(539) 评论(0) 推荐(0) 编辑
摘要:系列目录 【已更新最新开发文章,点击查看详细】 在 2.0 之前的 C# 版本中,声明委托的唯一方式是使用命名方法。 C# 2.0 引入匿名方法,在 C# 3.0 及更高版本中,Lambda 表达式取代匿名方法作为编写内联代码的首选方式。 但是,本主题中有关匿名方法的信息也适用于 Lambda 表达 阅读全文
posted @ 2019-06-20 18:23 张传宁 阅读(526) 评论(0) 推荐(0) 编辑
摘要:系列目录 【已更新最新开发文章,点击查看详细】 C# 语言和公共语言运行时 (CLR) 的 2.0 版本中添加了泛型。 泛型将类型参数的概念引入 .NET Framework,这样就可以设计具有以下特征的类和方法:在客户端代码声明并初始化这些类和方法之前,这些类和方法会延迟指定一个或多个类型。 泛型 阅读全文
posted @ 2019-06-20 18:13 张传宁 阅读(494) 评论(0) 推荐(0) 编辑
摘要:系列目录 【已更新最新开发文章,点击查看详细】 分部类型 拆分一个类、一个结构、一个接口或一个方法的定义到两个或更多的文件中, 每个源文件包含类型或方法定义的一部分,编译应用程序时将把所有部分组合起来。 分部类 在以下几种情况下需要拆分类定义: 处理大型项目时,使一个类分布于多个独立文件中可以让多位 阅读全文
posted @ 2019-06-20 15:41 张传宁 阅读(636) 评论(0) 推荐(0) 编辑

页脚 HTML 代码