C# 第一天

原创 2015年11月17日 17:34:39

在没有发布c#和.NET之前,windows使用COM(component object model,组件对象模型 )。但是COM不能跨平台,优点是语言无关。


.NET Framework核心功能:
1.对已有代码具有完全的互操作性
2.支持多种语言(这里主要是想用C#)
3.所有支持.NET语言共享的公共运行时引擎
4.语言集成(感觉就是支持多种语言)
5.全面地基础类库
6.简化的部署模型:不需要将二进制注册到系统注册表,允许同一个*.dll的不同版本存在于一台机器


预览.NET成为现实的3个关键:
CLR(Common Language Runtime,公共语言运行库)
CTS(Common Type System,公共类型系统)
CLS(Common Language Specification,公共语言规范)


BCL(Base Class Library,基础类库)
之间的关系:
这里写图片描述


C#的一些核心特征(应该是为了证明我不是C/JAVA):
1.能自动清理内存,不支持delete(像JAVA,但是区分C/C++)
2.类、接口、结构、枚举和委托都有正式的语法结构
3.可以简单的重载运算符
4.支持基于特性的编程,即允许我们注释类型及其成员来进一步限定其行为。


必须在.NET运行库下执行的代码称为托管代码(managed code),这些包含托管代码的二进制单元称为程序集(assembly)。C#生成的代码就是托管代码!
之所以含有托管代码是因为可以让程序员保留自己的习惯,因为不同的语言风格,生成的托管代码都是一样的。


各种语言通过编译器统一生成的是中间语言IL(intermediate language)和类型元数据。
PS:在.NET的开发中,IL的官方术语是MSIL(Microsoft intermediate language,微软中间语言)或CIL(common intermediate language,公共中间语言)


委托(delegate)在.NET中等效于类型安全的C风格的函数指针。他们的只要不同在于,.NET委托是派生自System.MulticastDelegate的类,而不是一个简单的指向原始内存地址的指针。


上述的集成:
图片名称



静态成员是类级别的,而不是对象级别的,所以调用之前不需要先创建新的类实例。
如果不明确提供一个访问修饰符,函数默认就是private的,以确保其他程序不能直接调用另一个应用程序的接口。


所有内建数据类型都支持默认构造函数。

版权声明:本文为博主原创文章,随便转载。

相关文章推荐

C#每月第一天和最后一天

  • 2011年01月15日 15:44
  • 492B
  • 下载

5天玩转C#并行和多线程编程 —— 第一天 认识Parallel

5天玩转C#并行和多线程编程 —— 第一天 认识Parallel   随着多核时代的到来,并行开发越来越展示出它的强大威力!使用并行程序,充分的利用系统资源,提高程序的性能。在.ne...
  • wowotuo
  • wowotuo
  • 2014年11月25日 10:33
  • 786

21天学通C# 第一天电子教案

  • 2011年05月25日 12:02
  • 184KB
  • 下载

c#笔记第一天

  • 2014年09月16日 22:31
  • 2KB
  • 下载

C#第一天-1

c#环境: .NET框架,C#是语言,.NET是平台 .NET(DotNET 这样读显得高大上) 集成开发环境visual studio ,现用2015社区版,装了半天,出了错,仍然坚强的在用——...
  • ld1612
  • ld1612
  • 2017年07月24日 17:31
  • 54

第一天,回顾C,闲谈C、C++、C#以及.NET

程序猿一天不写代码,就好像鱼儿几小时离开水一样,总感觉不对劲,再次编写代码时,会发现这样那样的不该,总有点不适应,好像活在了真空一样,急需氧的呵护。。。。。当然如果出现了上述情况,我想第一件事不是马上...
  • xfj66hh
  • xfj66hh
  • 2012年07月13日 23:52
  • 227

5天玩转C#并行和多线程编程 —— 第一天 认识Parallel

随着多核时代的到来,并行开发越来越展示出它的强大威力!使用并行程序,充分的利用系统资源,提高程序的性能。在.net 4.0中,微软给我们提供了一个新的命名空间:System.Threading.Tas...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C# 第一天
举报原因:
原因补充:

(最多只允许输入30个字)