MSDN的解释:
.NET Framework 是为其运行的应用程序提供各种服务的托管执行环境。CLR是.NET Framework的核心
CLR的核心是CTS和CLS
(Common Type System)CTS是通用类型系统
(Common Language Specification)CLS是公共语言定义(Common Language Runtime)CLR公共语言运行时Language complier:语言编译器。
MSIL:微软中间语言。JIT:及时编译,将MSIL解释为程序可以理解的语言。CLR的执行模型:1、将源代码(vb、cs)编译成 托管代码块2、将托管代码合并成程序集,也叫组件(dll)3、加载公共语言运行库4、执行程序集的代码5、生成本地代码CLI,公共语言基础架构(Common Language Infrastructure)
CLI是一个开放的技术规范,它定义了一个语言无关的跨体系结构的运行环境,这使得开发者可以用规范内定义的各种高级语言来开发软件,并且无需修正即可将软件运行在不同的计算机体系结构上。BCL,基础类库(Base Class Library)
BCL是一个公共编程框架,称为基类库,是CLI(Common Language Infrastructure,公共语言基础结构)的规范之一,主要包括:执行网络操作,执行I/O操作,安全管理,文本操作,数据库操作。FCL,框架类库(Framework Class Library)
FCL提供了大粒度的编程框架,它是针对不同应用设计的框架 ,FCL
大部分实现都引用了BCL。托管代码就是Visual Basic .NET和C#编译器编译出来的代码,
托管代码在公共语言运行库(CLR)中运行非托管代码是运行在公共语言运行库环境(CLR)的外部,
由操作系统直接执行的代码1、托管代码是一种中间语言,运行在CLR上;
非托管代码被编译为机器码,运行在机器上。2、托管代码独立于平台和语言,能更好的实现不同语言平台之间的兼容;非托管代码依赖于平台和语言。unsafe可以用来修饰类、类的成员函数、类的全局变量,但不能用来修饰类成员函数内的局部变量
在公共语言运行时 (CLR) 中,不安全代码是指无法验证的代码。运行unsafe ,需要设置:
单击“配置属性”文件夹。 单击“生成”属性页。 修改“允许不安全代码块”属性GC(Garbage Collector)如其名,就是垃圾收集,这里仅就内存而言
.NET的GC机制两个问题:首先,GC并不是能释放所有的资源。它不能自动释放非托管资源。第二,GC并不是实时性的,这将会造成系统性能上的瓶颈和不确定性.NET Framework 概念总结
1.IL/MSIL/CIL Microsoft Intermediate Language)微软中间语言(IL是MSIL的缩写,译为中间语言)2.CTS (Common Type System)通用类型系统3.CLS (Common Language Specification)公共语言规范4.CLR (Common Language Runtime)公共语言运行时(也有的叫公共语言运行库)5.JIT (Just in time)即时编译器6.CLI 公共语言基础架构(Common Language Infrastructure)7. BCL 基础类库(Base Class Library)8. FCL 框架类库(Framework Class Library) 一维数组的直接赋值 int [] 名字 = new int [] { }; 中括号里面的值必须要和后面的值长度相同 否则里面什么都不要写