关闭

C# 第一天

标签: C#
204人阅读 评论(0) 收藏 举报
分类:

在没有发布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的,以确保其他程序不能直接调用另一个应用程序的接口。


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

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:7617次
    • 积分:299
    • 等级:
    • 排名:千里之外
    • 原创:20篇
    • 转载:0篇
    • 译文:0篇
    • 评论:1条
    文章分类
    最新评论
  • WIFI密码破解

    u013245773: 这个的确可以破解的,但是一般抓包要几个小时才可能抓到握手包,然后还要看字典有没有,最后破解又要几个小...