C# 语法表现力强,而且简单易学。C# 的大括号语法使任何熟悉 C、C++ 或 Java 的人都可以立即上手。了解上述任何一种语言的开发人员通常在很短的时间内就可以开始使用 C# 高效地进行工作。C# 语法简化了 C++ 的诸多复杂性,并提供了很多强大的功能,例如可为 null 的值类型、枚举、委托、lambda 表达式和直接内存访问,这些都是 Java 所不具备的。C# 支持泛型方法和类型,从而提供了更出色的类型安全和性能。C# 还提供了迭代器,允许集合类的实施者定义自定义的迭代行为,以便容易被客户端代码使用。在
C# 3.0 中,语言集成查询 (LINQ) 表达式使强类型查询成为了一流的语言构造。
作为一种面向对象的语言,C# 支持封装、继承和多态性的概念。所有的变量和方法,包括 Main 方法(应用程序的入口点),都封装在类定义中。类可能直接从一个父类继承,但它可以实现任意数量的接口。重写父类中的虚方法的各种方法要求
override 关键字作为一种避免意外重定义的方式。在 C# 中,结构类似于一个轻量类;它是一种堆栈分配的类型,可以实现接口,但不支持继承。
除了这些基本的面向对象的原理之外,C# 还通过几种创新的语言构造简化了软件组件的开发,这些结构包括:
-
封装的方法签名(称为“委托”),它实现了类型安全的事件通知。
-
属性 (Property),充当私有成员变量的访问器。
-
属性 (Attribute),提供关于运行时类型的声明性元数据。
-
内联 XML 文档注释。
-
语言集成查询 (LINQ),提供了跨各种数据源的内置查询功能。
在 C# 中,如果必须与其他 Windows 软件(如 COM 对象或本机 Win32 DLL)交互,则可以通过一个称为“互操作”的过程来实现。互操作使 C# 程序能够完成本机 C++ 应用程序可以完成的几乎任何任务。在直接内存访问必不可少的情况下,C# 甚至支持指针和“不安全”代码的概念。
C# 的生成过程比 C 和 C++ 简单,比 Java 更为灵活。没有单独的头文件,也不要求按照特定顺序声明方法和类型。C# 源文件可以定义任意数量的类、结构、接口和事件。
下列各项是其他 C# 资源:
-
有关该语言的充分常规介绍,请参见 C# 语言规范 的第 1 章。
-
有关 C# 语言特定方面的详细信息,请参见 C# 参考。
-
有关 C# 语法与 Java 和 C++ 语法的比较,请参见 C# 编程语言(针对 Java 开发人员)和 C#(针对 C++ 开发人员)。
-
有关 LINQ 的更多信息,请参见 语言集成查询 (LINQ)。
-
若要查找 Visual C# 团队提供的最新文章和资源,请访问
Visual C# 开发中心。
.NET Framework 平台体系结构
C# 程序在 .NET Framework 上运行,它是 Windows 的一个不可或缺的组件,包括一个称为公共语言运行库 (CLR) 的虚拟执行系统和一组统一的类库。CLR 是 Microsoft 的公共语言基础结构 (CLI) 的商业实现。CLI 是一种国际标准,是用于创建语言和库在其中无缝协同工作的执行和开发环境的基础。
用 C# 编写的源代码被编译为一种符合 CLI 规范的中间语言 (IL)。IL 代码与资源(例如位图和字符串)一起作为一种称为程序集的可执行文件存储在磁盘上,通常具有的扩展名为 .exe 或 .dll。程序集包含清单,它提供有关程序集的类型、版本、区域性和安全要求等信息。
执行 C# 程序时,程序集将加载到 CLR 中,这可能会根据清单中的信息执行不同的操作。然后,如果符合安全要求,CLR 就会执行实时 (JIT) 编译以将 IL 代码转换为本机机器指令。CLR 还提供与自动垃圾回收、异常处理和资源管理有关的其他服务。由 CLR 执行的代码有时称为“托管代码”,它与编译为面向特定系统的本机机器语言的“非托管代码”相对应。下图阐释了 C# 源代码文件、.NET Framework 类库、程序集和 CLR 的编译时与运行时的关系。
语言互操作性是 .NET Framework 的一项主要功能。因为由 C# 编译器生成的 IL 代码符合公共类型规范 (CTS),因此从 C# 生成的 IL 代码可以与从 Visual Basic、Visual C++、Visual J# 的 .NET 版本或者其他 20 多种符合 CTS 的语言中的任何一种生成的代码进行交互。单一程序集可能包含用不同 .NET 语言编写的多个模块,并且类型可以相互引用,就像它们是用同一种语言编写的。
除了运行时服务之外,.NET Framework 还包含一个由 4000 多个类组成的内容详尽的库,这些类被组织为命名空间,为从文件输入和输出、字符串操作、XML 分析到 Windows 窗体控件的所有内容提供了各种有用的功能。典型的 C# 应用程序使用 .NET Framework 类库广泛地处理常见的“日常”任务。
有关 .NET Framework 的更多信息,请参见 .NET Framework 概述。
分享到:
相关推荐
C#语言和.NET Framework介绍 外文翻译.docx
第 1 章介绍了数据结构和算法的基本 C#的知 识;第 2 章至第 6 章分别讨论了线性表、栈和队列、串和数组、树型结构和图结构等常用的 数据结构及其应用,以及在.NET 框架中相应的数据结构;第 7、8 两章分别讨论了...
C# 教学资料 从基础只是到高级应用都有所讲解 ...首先介绍了Microsoft .NET Framework的框架,以及公共语言运行库、.NET Framework类库、ADO.NET和Web服务的特点。接着讲述了命名空间的基本定义和常用的类型。
编者在写这本书时遇到了两个问题。第一个问题是关于数据结构教材。...也附带说一句:如果读者在阅读过程中,发现有些技术不是最新的技术也不要惊奇,本书是以C#语言和.NET Framework2.0版本来写的。
.NET Framework 4.5 RC 包括针对 C# 和 Visual Basic 的重大语言和框架改进,以便您能够更轻松地编写异步代码、同步代码中的控制流混合、可响应 UI 和 Web 应用程序可扩展性。.NET Framework 4.5 RC 添加了针对其他...
.NET Framework 4.5 包括针对 C#、Visual Basic 和 F# 的重大语言和框架改进(以便您能够更轻松地编写异步代码)、同步代码中的控制流混合、可响应 UI 和 Web 应用程序可扩展性。.NET Framework 4.5 添加了针对其他...
纯本人死磕原创!!!!! 封装了微信Native支付V3版本,使用.net framework开发,集成了微信统一... 有能力的朋友可支持一下,资金紧张的朋友或还有疑问的朋友可以私信(仅限.net framework,其他语言我也不会)!
C#的基于.net framework的Winform编程例子
C#的基于.net framework的Dll文件模块编程例子
本书中所有的示例都使用VS进行开发,VS是一种强大的集成开发环境,支持C#(以及托管和非托管C++、Visual Basic和其他一些语言)。这个环境的优点是便于把.NET功能集成到代码中。我们创建的代码完全是C#代码,但使用...
.NET Framework 4.0 常用类库参考手册 [微软官方 MSDN] MSDN Library - .NET Framework 4.0 - 命名空间 (节选版) 制作成了chm格式,方便离线状态下学习! ======================================= 原文地址:...
This new edition of Pro C# 5.0 and the .NET 4.5 Platform has been completely revised and rewritten to reflect the latest changes to the C# language specification and new advances in the .NET Framework...
在接下来的写作过程中,编者遇到了另外一个问题,那就是C#语言和.NET Framework的发展。当作者写这本书时,是以C#语言和.NET Framework 的2.0版本来写的。但是,到目前为止,C#语言和.NET Framework已经出现3.0版本...
《Visual Studio.NET Framework技术内幕》讲解翔实,示例具体,是.NET编程人员不可或缺的参考手册,尤其适合Visual Studio.NET和C#的中高级用户使用。 Visual Studio.NET Framework技术内幕 目录 1,.NET概述 2...
课程简介 .NET是微软提供的平台及设备无关的软件开发模型。而.NET Framework则是...本课程介绍利用C#进行基于.NET Framework的程序设计的知识和技能。 预备知识 熟悉 C++ 或 Java 编程语言 具备 C# 编程语言的基本知识
.net framework4.0框架 winform页面 数据分页控件 无其他任何引用 c#语言编写。
本书提供了逐步学习C#和.NET Framework的面向对象程序设计的方法,同时为您进行数据驱动的开发做准备。 其中包括150多个易于遵循的示例。
课程简介 .NET是微软提供的平台及设备无关的软件开发模型。而.NET Framework则是...本课程介绍利用C#进行基于.NET Framework的程序设计的知识和技能。 预备知识 熟悉 C++ 或 Java 编程语言 具备 C# 编程语言的基本知识
在接下来的写作过程中,编者遇到了另外一个问题,那就是 C#语言和.NET Framework 的发展。当作者写这本书时,是以 C#语言和.NET Framework 的 2.0 版本来写的。但是,到 目前为止,C#语言和.NET Framework 已经出现 ...