.net framework 知识点
来源:互联网 发布:怎样关闭淘宝退款申请 编辑:程序博客网 时间:2024/06/06 15:40
- .NET 是微软推出的开发平台。.NET框架是以一种采用系统虚拟机运行的编程平台,以通用语言运行库(Common Language Runtime)为基础,支持多种语言(C#、VB、C++、Python等)的开发。NET也为应用程序接口(API)提供了新功能和开发工具。这些革新使得程序设计员可以同时进行Windows应用软件和网络应用软件以及组件和服务(web服务)的开发。.NET提供了一个新的反射性的且面向对象程序设计编程接口。.NET设计得足够通用化从而使许多不同高级语言都得以被汇集。.NET Framework中的所有语言都提供基类库(BCL)。
- CLI : Common Language Infrastructure 公共语言结构。 常提的C++/CLI 代替C++托管扩展,是熟悉C++的开发人员也可以在.NET FrameWork平台上开发。一种支持动态组件编程模型的多重结构,在许多情况下,这代表了一个与C++对象模型完全颠倒了的模式。一个时实的软件层,有效地执行系统,在底层操作系统与程序之间运行。操作底层的设备受到一定的限制,操作执行程序中的活动类型及与程序相关联的下部结构得到了支持。反斜杠(/)代表C++和CLI的捆绑。
- CLR:CLR(公共语言运行库,Common Language Runtime)和Java虚拟机一样也是一个运行时环境,是一个可由多种编程语言使用的运行环境。CLR的核心功能包括:内存管理、程序集加载、安全性、异常处理和线程同步,可由面向CLR的所有语言使用。并保证应用和底层操作系统之间必要的分离。CLR是.NET Framwork的主要执行引擎。
- IL: IL是.NET框架中中间语言(Intermediate Language)的缩写。使用.NET框架提供的编译器可以直接将源程序编译为.exe或.dll文件,但此时编译出来的程序代码并不是CPU能直接执行的机器代码,而是一种中间语言IL(Intermedate Language)的代码。使用中间语言的优点有两点,一是可以实现平台无关性,既与特定CPU无关;二是只要把.NET框架某种语言编译成IL代码,就实现.NET框架中语言之间的交互操作。(《C#程序设计及应用教程》(第2版),马骏 主编)
- JIT:JIT编译器,英文写作Just-In-Time Compiler,中文意思是即时编译器。
开发人员需要通过IL与CLR进行交流, 虽然IL本身支持一些面向对象的概念, 但是对于开发人员来讲还是过于复杂低效, 于是C#应运而生, 程序员只需编写C#代码, csc编译器会将其翻译成IL;虽然CLR理解IL, 但是CPU只认识二进制指令, 所以CLR需要JIT的帮助, 将IL翻译成CPU指令. JIT按需工作, 当一个.NET方法即将被执行时, JIT会介入, 把该方法(IL指令) 编译成CPU指令, 并保存以供重用.
- GC: 垃圾回收管理器 , 工作方式:每次您使用 new 运算符创建对象时,运行库都从托管堆为该对象分配内存。只要托管堆中有地址空间可用,运行库就会继续为新对象分配空间。但是,内存不是无限大的。最终,垃圾回收器必须执行回收以释放一些内存。垃圾回收器优化引擎根据正在进行的分配情况确定执行回收的最佳时间。当垃圾回收器执行回收时,它检查托管堆中不再被应用程序使用的对象并执行必要的操作来回收它们占用的内存。
- class 是引用类型,struct 是值类型的,所以class的对象可以赋值为null,而struct的对象不可以。class的对象分配在对堆上,而struct的对象分配在栈上。参数类型是class的时候,传递的是引用,参数是struct类型时传递的是值。class的成员可以被初始化,但是struct类型的不可以。
- .net framework 知识点
- framework知识点
- Play framework 小知识点
- .net framework
- NET Framework:
- .NET Framework
- .NET Framework
- .net Framework
- .NET Framework
- .NET Framework
- .NET Framework
- .NET Framework
- .Net Framework
- .NET Framework
- .net framework
- .net framework
- NET Framework
- .NET Framework
- linux虚拟机VMware vSphere上安装VMware Tools
- Android下增加APK访问/data目录权限的方法
- centos No package 'glib-2.0' found解决办法
- Ibatis 实现多对多映射
- 数字图像处理基本算法实现(1)--section3.2基本灰度变换
- .net framework 知识点
- windows form (窗体) 之间传值小结
- JAVA中int、String的类型转换
- QLPreviewController用法
- 台湾程序员的Blog
- 体内湿气重怎样祛除?
- tkprof
- 《C++第八周实验报告1-1(3)》---在方案二的基础上,扩展+、-、*、/运算符的功能,使之能与double型数据进行运算
- 运行多个tomcat