C#语言是最主要的.NET Framework兼容语言,它是为了和.NET Framework一起使用而专门设计的。但是C#本身是一门语言,它只是用于生成面向.NET环境的代码,并不是.NET的一部分。换言之,C#编写的代码总是运行在.NET Framework中。而且,在很多时候,C#的特定功能依赖于.NET。比如,在C#中声明一个int类型,实际上是.NET中System.Int32类的一个实例。.NET Framework 支持的一些特性,C#并不支持;C#支持的一些特性,.NET Framework并不支持,例如运算符重载。

托管代码与非托管代码。托管代码是指为.NET Framework 编写的代码,它在.NET Framework 的公共语言运行库(CLR)控制之下运行,类似于Java的虚拟机机制。托管代码应用程序可以获得CLR服务,例如类型检查、自动垃圾回收和安全支持等。非托管代码指不在CLR控制下的运行的代码,由操作系统直接运行。

托管代码不能直接写内存,是安全的,非托管代码是非安全代码,可以使用指针操作内存。

.NET Framework 的组成主要由FCL(.NET Framework 类库)和CLR(公共语言运行库)两部分组成。

FCL是一个全面的类库,它是生成.NET Framework 应用程序、组件和控件的基础。FCL由命名空间组成。每个命名空间都包含可在程序中应用的类、结构、委托和接口等。常见的命名空间有System、System.Windows等。

CLR是.NET Framework 核心组件,负责管理程序的执行。主要由公共语言规范(CLS)和通用类型系统(CTS)两部分组成。CLS定义了不同语言之间必须遵守的共同标准,包括函数调用方式、参数调用方式、数据类型和异常处理方式。通用类型系统用于解决不同编码语言的数据类型不同的问题,实现不同语言之间数据类型的统一。

(1)C#与.NET Framework、FCL与CLR相关推荐

  1. 扒一扒.net、.net framework、mono和Unity

    zhaichao 标签: .net.net frameworkc#monounity 2017-04-23 14:39 425人阅读 评论(0) 收藏 举报 版权声明:本文为博主原创文章,未经博主允许 ...

  2. 初学c#读书笔记(一)--c#和.NET Framework

    开篇废话      Java的读书笔记因为有的没的原因中断了,现在新写的c#读书笔记总结之前的经验准备作出一些改变.      不在以学校课本为主:c#读书笔记是以<c#图解教程>和< ...

  3. 3万字通俗易懂告诉你什么是.NET?什么是.NET Framework?什么是.NET Core?

    通俗易懂,什么是.NET?什么是.NET Framework?什么是.NET Core? 什么是.NET?什么是.NET Framework?本文将从上往下,循序渐进的介绍一系列相关.NET的概念,先 ...

  4. 【转载】通俗易懂,什么是.NET?什么是.NET Framework?什么是.NET Core?

    什么是.NET?什么是.NET Framework?本文将从上往下,循序渐进的介绍一系列相关.NET的概念,先从类型系统开始讲起,我将通过跨语言操作这个例子来逐渐引入一系列.NET的相关概念,这主要包 ...

  5. 3万字长文概述:通俗易懂告诉你什么是.NET?什么是.NET Framework?什么是.NET Core?

    [转载]通俗易懂,什么是.NET?什么是.NET Framework?什么是.NET Core? 什么是.NET?什么是.NET Framework?本文将从上往下,循序渐进的介绍一系列相关.NET的 ...

  6. 通俗易懂,什么是.NET?什么是.NET Framework?什么是.NET Core?

    什么是.NET?什么是.NET Framework?本文将从上往下,循序渐进的介绍一系列相关.NET的概念,先从类型系统开始讲起,我将通过跨语言操作这个例子来逐渐引入一系列.NET的相关概念,这主要包 ...

  7. 什么是.NET?什么是.NET Framework?什么是.NET Core?

    什么是.NET?什么是.NET Framework?本文将从上往下,循序渐进的介绍一系列相关.NET的概念,先从类型系统开始讲起,我将通过跨语言操作这个例子来逐渐引入一系列.NET的相关概念,这主要包 ...

  8. 通俗易懂,什么是.NET?什么是.NET Framework?什么是.NET Core? 转自:https://www.cnblogs.com/1996V/p/9037603.html#net1...

    通俗易懂,什么是.NET?什么是.NET Framework?什么是.NET Core? 什么是.NET?什么是.NET Framework?本文将从上往下,循序渐进的介绍一系列相关.NET的概念,先 ...

  9. 通俗易懂:什么是.NET?.NET Framework?.NET Core?(比较全面)

    什么是.NET?什么是.NET Framework?本文将从上往下,循序渐进的介绍一系列相关.NET的概念,先从类型系统开始讲起,我将通过跨语言操作这个例子来逐渐引入一系列.NET的相关概念,这主要包 ...

最新文章

  1. 万字长文详解如何用Python玩转OpenGL | CSDN 博文精选
  2. 后台开发经典书籍--高性能mysql
  3. VTK:多重渲染窗口用法实战
  4. 用根因定位法,让运维效率再高一点!
  5. 鸿蒙2.0beta报名,鸿蒙OS 2.0 Beta版系统在哪报名-报名方法介绍
  6. CloudIDE:为开发者写代码开启“加速”模式
  7. vscode还用装git_如何给VScode配置git
  8. 大一c语言期末考试编程题
  9. 关于安卓刷机的一些基础知识及术语
  10. 卡方检验四格表怎么做_运用SPSS进行医学诊断数据的Kappa一致性检验 ——【杏花开医学统计】...
  11. 提高笔记本无线网络速度
  12. GoFW|网页加速器
  13. fabric1.1 ca集成
  14. 解决Hexo博客的Next主题中阅读全文没有auto_excerpt的问题
  15. ih5语言叫html5,iH5最专业的H5制作工具
  16. windows下如何安装及使用github
  17. java se安装_安装Java SE平台
  18. Missing artifact com.microsoft.sqlserver:sqljdbc4:jar:4.0解决方案
  19. NR PUSCH(七) 相干传输
  20. word嵌入对象依损坏_和平精英辅助不好封技术员为你说明注解word临时文件处理步骤辅助...

热门文章

  1. Heroku 部署 Django APP
  2. 2022东软Java暑假实训
  3. python3操作excel csv、xls、xlsb、xlsm、xlsx
  4. 多媒体计算机采用的数字化,数字化学习中运用多媒体(下)
  5. 数码管显示驱动及I/O扩展芯片CH422
  6. 迅雷创始人程浩:AI 创业必知 6 大核心问题:如何选择赛道、搭配团队和应对巨头挑战
  7. 关于携程多玩对接-订单对接
  8. Problem A:天堂_珍珠
  9. OpenJudge小组NOI / 1.1编程基础之输入输出01:Hello, World!(python)
  10. 【ShoppingPeeker】-基于Webkit内核的爬虫蜘蛛引擎 ShoppingWebCrawler的姊妹篇-可视化任务Web管理...