应关注的概念
2006-07-31 09:29
176 查看
封装的方法签名(称为委托),它实现了类型安全的事件通知。
委托类型表示对具有特定参数列表和返回类型的方法的引用。通过委托,我们能够将方法作为实体赋值给变量和作为参数传递。委托类似于在其他某些语言中的函数指针的概念,但是与函数指针不同,委托是面向对象的,并且是类型安全的
属性 (Property),充当私有成员变量的访问器。
属性 (Attribute),提供关于运行时类型的声明性元数据。
C# 2.0 引入了几项语言扩展,其中包括泛型 (Generic)、匿名方法 (Anonymous Method)、迭代器 (Iterator)、分部类型 (Partial Type) 和可空类型 (Nullable Type)。
· 泛型可以让类、结构、接口、委托和方法按它们存储和操作的数据的类型进行参数化。泛型很有用,因为它们能提供更强的编译时类型检查,减少数据类型之间的显式转换,以及装箱操作和运行时的类型检查。
· 在需要委托值的地方,匿名方法允许以“内联”方式编写代码块。匿名方法类似于 Lisp 编程语言中的 lambda 函数。C# 2.0 支持创建“closure”,其中的匿名方法可以访问外层局部变量和参数。
· 迭代器是执行递增计算并产生一系列值的方法。迭代器使类型可以简便地指定foreach 语句循环访问其元素的方式。
· 分部类型允许将类、结构和接口划分为多个部分,存储在不同的源文件中,以便于开发和维护。此外,分部类型允许将计算机生成的类型部分和用户编写的类型部分互相分开,以便更容易地扩充工具生成的代码。
· 可空类型表示可能未知的值。可空类型支持其基础类型的所有值以及一个附加的空状态。任何值类型均可作为可空类型的基础类型。可空类型支持与其基础类型相同的转换和运算符,另外还提供类似于 SQL 的空值传播。
接口 (interface) 定义了一个可由类和结构实现的协定
关键字 string 只是预定义类 System.String 的别名
装箱和拆箱的概念是 C# 的类型系统的核心。它在 value-type 和 reference-type 之间的架起了一座桥梁,使得任何 value-type 的值都可以转换为 object 类型的值,反过来转换也可以。装箱和拆箱使我们能够统一地来考察类型系统,其中任何类型的值最终都可以按对象处理。
委托类型表示对具有特定参数列表和返回类型的方法的引用。通过委托,我们能够将方法作为实体赋值给变量和作为参数传递。委托类似于在其他某些语言中的函数指针的概念,但是与函数指针不同,委托是面向对象的,并且是类型安全的
属性 (Property),充当私有成员变量的访问器。
属性 (Attribute),提供关于运行时类型的声明性元数据。
C# 2.0 引入了几项语言扩展,其中包括泛型 (Generic)、匿名方法 (Anonymous Method)、迭代器 (Iterator)、分部类型 (Partial Type) 和可空类型 (Nullable Type)。
· 泛型可以让类、结构、接口、委托和方法按它们存储和操作的数据的类型进行参数化。泛型很有用,因为它们能提供更强的编译时类型检查,减少数据类型之间的显式转换,以及装箱操作和运行时的类型检查。
· 在需要委托值的地方,匿名方法允许以“内联”方式编写代码块。匿名方法类似于 Lisp 编程语言中的 lambda 函数。C# 2.0 支持创建“closure”,其中的匿名方法可以访问外层局部变量和参数。
· 迭代器是执行递增计算并产生一系列值的方法。迭代器使类型可以简便地指定foreach 语句循环访问其元素的方式。
· 分部类型允许将类、结构和接口划分为多个部分,存储在不同的源文件中,以便于开发和维护。此外,分部类型允许将计算机生成的类型部分和用户编写的类型部分互相分开,以便更容易地扩充工具生成的代码。
· 可空类型表示可能未知的值。可空类型支持其基础类型的所有值以及一个附加的空状态。任何值类型均可作为可空类型的基础类型。可空类型支持与其基础类型相同的转换和运算符,另外还提供类似于 SQL 的空值传播。
可访问性 | 含义 |
public | 访问不受限制 |
protected | 访问仅限于此类和从此类派生的类 |
internal | 访问仅限于此程序 |
protected internal | 访问仅限于此程序和从此类派生的类 |
private | 访问仅限于此类 |
关键字 string 只是预定义类 System.String 的别名
装箱和拆箱的概念是 C# 的类型系统的核心。它在 value-type 和 reference-type 之间的架起了一座桥梁,使得任何 value-type 的值都可以转换为 object 类型的值,反过来转换也可以。装箱和拆箱使我们能够统一地来考察类型系统,其中任何类型的值最终都可以按对象处理。
相关文章推荐
- 学习JavaScript 的必备 (一),让您对js的 function, javascript内置对象,this概念及之间的关系不再迷惑。(希望能置为推荐篇,为更多的js初学者关注)
- 【性能测试】性能测试关注的几个重要概念
- 学习JavaScript 的必备 (一),让您对js的 function, javascript内置对象,this概念及之间的关系不再迷惑。(希望能置为推荐篇,为更多的js初学者关注)
- 大白话说信息熵概念,入门决策树可关注
- 不同人员对性能的关注点与web前端性能测试概念
- Java - 你是如何理解"横切关注"这个概念的?
- 咬文嚼字话搜索:关注"垂直搜索",低技术含量的伪概念?(评论)
- C#面向对象系列(1):值得关注的概念
- 关注年底“高送转”概念
- 软件性能-概念、关注点、术语
- 在线教育玩概念没出路:Lynda现象值得关注
- 为什么有消息说这次地震比以前的同级地震危害更大,这就要关注地震的另一个指标,烈度。这有一些资料可以为您解释烈度的概念。将地震的震级和烈度了解清楚,区分开来。
- 困惑中的IT企业务必关注当今软件生产的概念、技术和方法发展动向
- RMS概念解析与使用指南
- oracle 11g RAC 的一些基本概念(二)
- 编程面试的10大算法概念汇总
- 关注他人感受
- LVS三种模式——概念
- 图的基本概念
- 独立董事、内部董事、执行董事、外部董事、非执行董事概念