初探C#

C# 1

此起彼伏内容将日趋健全,请持续关怀!

C# 2

C# 3

COM
Marshaler:向下包容(详细内容请看:https://msdn.microsoft.com/zh-cn/library/bb822049(v=vs.110).aspx.aspx))

Exception
Manager:格外处理体制

                                               
                  初探.NET底层原理

     
相比Java由于微软对C#言语的包裹,让广大人在其深造的较长期内不可以长远掌握。举个不难的例子:大家知道C#语言关于字段的包装:在C#言语的落到实处中是get和set属性,而在Java中确是get和set方法令人一目掌握,其实C#也是选拔get,set方法完成的,只但是封装起来,大家看不到而已。

C#,该图为.NET平台机构图,可以窥见VS.NET框架的主旨技术为国有语言运行时(CLR)而且还包括BCL(基础类库)以及.NET中的各类语言,为何会有这么二种语言可以在.net平巴尔的摩运行吧?其实,以上的各类语言都得以编写面向CLR的程序代码,那种代码在.net中被称呼托管代码,所有的托管代码都可以在CLR上运行,具有平台无关性。为什么.net不可以促成跨平台吗?例如在Linux中缘何不可以完成asp.net或者winform呢,其实就是因为没有面向Linux开发的CLR(不过mono貌似已经完结了,由于我没有接纳过,所以就不予置讲了),就是那样的缘故,.net未能兑现跨平台。

 

其实.NET平台相当于Java中的虚拟机,通过C#编译器得到中间语言(一种非凡的字节码),运行时再经由CLR中的JIT(just in 提姆e)编辑器编译为机械代码,便于OS执行。

Type
Cheker:类型安全实施(任何不切合项目安全的强制转换后,都会进行检查,除此之外还自行检查未开头化的变量与当先索引的数组)

那么下边大家来看一下.NET中隐含哪些内容?

      首先大家要精通其余语言的运行,归根结蒂是机器语言的运作,也就是大方的01数字。而C#言语也正是依靠.net平台,将那种高级语言编译成01代码。那么C#语言在.net平弗罗茨瓦夫的编译进度到底是怎么着的吧?

 Base
Class LIbrary Support:基础类库协理

 Thread
Support:CLR帮助四线程(任何语言都足以选取此提供的劳动来进行编制二十四线程应用程序)。

GC:垃圾回收器并不可以管住内存中所有的资源,开发人员依旧须求自己写代码已毕回收,如选择close方法和dispose方法。

 

IL to Native Compliers:是指使用CLR对MSIL进行编译成机器代码。

     
学习C#离不开.net平台,因为微软的开销平台真正是太强大了,它为每一个开发者都做了太多太多,不过大家不仅要领悟怎么用,而且也理应明白其中的中间到底包涵了什么。本篇小说不仅讲一些C#言语的学问,也包含.net平弗罗茨瓦夫的一些运作的机理。

     
下边我们将起来讲起C#语言中的底层原理:

     
上边咱们来看CLR中的包蕴哪些内容?  

相关文章