文档库 最新最全的文档下载
当前位置:文档库 › MSDN - CSharp 语言和 .NET Framework 介绍

MSDN - CSharp 语言和 .NET Framework 介绍

MSDN - CSharp 语言和 .NET Framework 介绍
MSDN - CSharp 语言和 .NET Framework 介绍

C# 语言和 .NET Framework 介绍

C# 是一种简洁、类型安全的面向对象的语言,开发人员可以使用它来构建在 .NET

Fram ework 上运行的各种安全、可靠的应用程序。使用C#,您可以创建传统的Windows 客户端应用程序、XML Web services、分布式组件、客户端- 服务器应用程序、数据库应用程序以及很多其他类型的程序。Microsoft Visual C# 2005 提供高级代码编辑器、方便的用户界面设计器、集成调试器和许多其他工具,以在C# 语言版本2.0 和 .NET Framework 的基础上加快应用程序的开发。

注意

C# 语言

C# 语法表现力强,只有不到90 个关键字,而且简单易学。C# 的大括号语法使任何熟悉C、C++ 或Java 的人都可以立即上手。了解上述任何一种语言的开发人员通常在很短的时间内就可以开始使用C# 高效地工作。C# 语法简化了C++ 的诸多复杂性,同时提供了很多强大的功能,例如可为空的值类型、枚举、委托、匿名方法和直接内存访问,这些都是Java 所不具备的。C# 还支持泛型方法和类型,从而提供了更出色的类型安全和性能。C# 还提供了迭代器,允许集合类的实现者定义自定义的迭代行为,简化了客户端代码对它的使用。

作为一种面向对象的语言,C# 支持封装、继承和多态性概念。所有的变量和方法,包括Main方法(应用程序的入口点),都封装在类定义中。类可能直接从一个父类继承,但它可以实现任意数量的接口。重写父类中的虚方法的各种方法要求override关键字作为一种避免意外重定义的方式。在C# 中,结构类似于一个轻量类;它是一种堆栈分配的类型,可以实现接口,但不支持继承。

除了这些基本的面向对象的原理,C# 还通过几种创新的语言结构加快了软件组件的开发,其中包括:

?封装的方法签名(称为委托),它实现了类型安全的事件通知。

?属性(Property),充当私有成员变量的访问器。

?属性(Attribute),提供关于运行时类型的声明性元数据。

?内联XML 文档注释。

在C# 中,如果需要与其他Windows 软件(如COM 对象或本机Win32 DLL)交互,可以通过一个称为“Interop”的过程来实现。互操作使C# 程序能够完成本机C++ 应用程序可以完成的几乎任何任务。在直接内存访问必不可少的情况下,C# 甚至支持指针和“不安全”代码的概念。

C# 的生成过程比C 和C++简单,比Java 更为灵活。没有单独的头文件,也不要求按照特定顺序声明方法和类型。C# 源文件可以定义任意数量的类、结构、接口和事件。

下列各项是其他C# 资源:

?有关该语言的充分常规介绍,请参阅C# 语言规范的第1 章。

?有关C# 语言特定方面的详细信息,请参阅C# 参考。

?有关C# 语法与Java 和C++语法的比较,请参阅C# 编程语言(针对Java 开发人员)和C#(针对C++ 开发人员)。

.NET Framework 平台体系结构

C# 程序在 .NET Fram ework 上运行,它是Windows 的一个必要组件,包括一个称为公共语言运行时(CLR) 的虚拟执行系统和一组统一的类库。CLR 是Microsoft 的公共语言基础结构(CLI) 的一个商业实现。CLI 是一种国际标准,是用于创建语言和库在其中无缝协同工作的执行和开发环境的基础。

用C# 编写的源代码被编译为一种符合CLI 规范的中间语言(IL)。IL 代码与资源(如位图和字符串)一起作为一种称为程序集的可执行文件存储在磁盘上,通常具有的扩展名为 .exe 或 .dll。程序集包含清单,它提供关于程序集的类型、版本、区域性和安全要求等信息。

执行C# 程序时,程序集将加载到CLR 中,这可能会根据清单中的信息执行不同的操作。然后,如果符合安全要求,CLR 执行实时(JIT) 编译以将IL 代码转换为本机机器指令。CLR 还提供与自动垃圾回收、异常处理和资源管理有关的其他服务。由CLR 执行的代码有时称为“托管代码”,它与编译为面向特定系统的本机机器语言的“非托管代码”相对应。下图演示了C# 源代码文件、基类库、程序集和CLR 的编译时与运行时的关系。

语言互操作性是 .NET Fram ework 的一个关键功能。因为由C# 编译器生成的IL 代码符合公共类型规范(CTS),因此从C# 生成的IL 代码可以与从Visual Basic、Visual C++、Visual J# 的 .NET 版本或者其他20 多种符合CTS 的语言中的任何一种生成的代码进行交互。单一程序集可能包含用不同 .NET 语言编写的多个模块,并且类型可以相互引用,就像它们是用同一种语言编写的。

除了运行时服务,.NET Fram ework 还包含一个由4000 多个类组成的内容详尽的库,这些类被组织为命名空间,为从文件输入和输出到字符串操作、到XML 分析、到Windows 窗体控件的所有内容提供多种有用的功能。典型的C# 应用程序使用 .NET Fram ework 类库广泛地处理常见的“日常”任务。

有关 .NET Fram ework 平台的更多信息,请参见.NET Fram ework 概述。

https://www.wendangku.net/doc/b72190441.html,/zh-cn/library/67ef8sbd(VS.80).aspx C# 编程指南

语言部分

在C# 程序内部

Main() 和命令行参数(C# 编程指南)

数据类型(C# 编程指南)

数组(C# 编程指南)

字符串(C# 编程指南)

语句、表达式和运算符(C# 编程指南)

对象、类和结构(C# 编程指南)

属性(C# 编程指南)

索引器(C# 编程指南)

委托(C# 编程指南)

事件(C# 编程指南)

泛型(C# 编程指南)

迭代器(C# 编程指南)

命名空间(C# 编程指南)

可空类型(C# 编程指南)

不安全代码和指针(C# 编程指南)

XML 文档注释(C# 编程指南)

平台部分

应用程序域(C# 编程指南)

程序集和全局程序集缓存(C# 编程指南)属性(C# 编程指南)

集合类(C# 编程指南)

异常和异常处理(C# 编程指南)

互操作性(C# 编程指南)

线程处理(C# 编程指南)

性能(C# 编程指南)

反射(C# 编程指南)

C# DLL(C# 编程指南)

安全性(C# 编程指南)

相关文档