C# 简介

 C# (读作 see sharp)是一款现代的、面向对象的、面向组件并且类型安全的编程语言。

特性

  1. 垃圾回收:自动回收不可达的未使用对象的内存
  2. 空指针类型: 防止使用未指定对象的引用变量
  3. 异常处理:为错误检测和恢复提供了一种结构化和可扩展的方法
  4. Lambda表达式:支持函数式编程技术
  5. 语言集成查询(LINQ)语法:为处理来自任何数据源的数据创建了通用模式
  6. 异步操作:为构建分布式系统提供了语法
  7. 统一类型系统:所有c#类型,包括int和double等基本类型,都继承自单个根对象类型。所有类型共享一组公共操作。任何类型的值都可以以一致的方式存储、传输和操作。
  8. 用户定义类型:支持用户定义的引用类型和值类型。
  9. 允许对象的动态分配和轻量级结构的内联存储
  10. 支持泛型方法和类型,这提高了类型安全性和性能。
  11. 提供了迭代器,它使集合类的实现者能够为客户端代码定义自定义行为。
  12. c#强调版本控制,以确保程序和库能够以兼容的方式随时间发展

.NET Architecture

c#程序在.net上运行,.net是一个名为公共语言运行时(Common Language Runtime, CLR)的虚拟执行系统和一组类库。CLR是微软对公共语言基础结构(CLI)的实现,这是一个国际标准。CLI(common language infrastructure,CLI)是创建执行和开发环境的基础,在这些环境中,语言和库可以无缝地协同工作。

用c#编写的源代码被编译成符合CLI规范的中间语言( intermediate language, IL)。IL代码和资源(如位图和字符串)存储在程序集中,通常以.dll为扩展名。程序集包含清单,清单提供有关程序集(assembly)的类型、版本和区域性的信息。

当c#程序被执行时,程序集被加载到CLR(Common Language Runtime, CLR)中。CLR执行即时(JIT)编译,将IL( intermediate language, IL)代码转换为本机机器指令。CLR提供了与自动垃圾收集、异常处理和资源管理相关的其他服务。由CLR执行的代码有时被称为“托管代码”。“非托管代码”被编译成针对特定平台的本机机器语言。

语言互操作性是.net的一个关键特性。c#编译器生成的IL代码符合通用类型规范(ommon Type Specification, CTS)。c#生成的IL代码可以与.net版本的f#、Visual Basic、c++生成的代码交互。还有超过20种其他的cts兼容语言。一个程序集可以包含用不同的.net语言编写的多个模块。这些类型可以相互引用,就好像它们是用同一种语言编写的一样。

除了运行时服务,. net还包括大量的库。这些库支持许多不同的工作负载。它们被组合到提供各种有用功能的命名空间(namespace)中。这些库包括从文件输入和输出到字符串操作到XML解析,到web应用程序框架到Windows窗体控件的所有内容。典型的c#应用程序广泛使用.net类库来处理常见的“管道”事务。

有关.net的更多信息,请参见.net概述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值