C# 学习笔记1 .NET平台,C#的重要概念
2024-10-15 07:11:57
.NET平台构成的三个关键实体是:
1、CLR(公共语言运行库):为我们定位,加载,管理.NET类型,同时负责一些底层细节的工作,如内存管理,应用托管,处理线程,安全检查等,它包含了一个重要名为mscoree.dll(公共对象运行库的执行引擎)的库,当一个程序集引用一个程序集时,要使用它时,首先会加载该库,然后由它负责将需要的导入内存。该库负责很多事儿,如解析程序集的位置,读取其中包含的元数据,在二进制文件中发现所请求的类型。最后由CLR在内存中为类型布局,将相关的CIL编译成特定平台的指令。
2、CTS(公共类型系统):完整描述了运行库所支持的所有可能的数据类型和编程结构 ,指定了实体间如何交互,也规定了他们在.NET元数据格式中的表示
3、CLS(公共语言规范):是一个相关规范,定义了一个让所有NET语言都支持的公共类型和编程结构的子集
除了这三个关键的实体外,还有一个重要的BCL(基础类库):封装了各种基本类型,如线程,文件的操作,图形的绘制,以及与各种外部硬件设备的交互,还支持在实际应用中用到的一些服务。
C#它生成的代码只能在。NET运行库中执行,它称为托管代码(必须在NET运行库下执行的代码)。包含托管代码的二进制单元称为程序集。
IL和MSIL,CIL都是指中间语言。
C#编译先转化为中间语言,然后在通过JIT(及时编译器)转化为有意义的CPU指令。
程序集清单:NET程序集也包含了描述程序集自身的元数据(程序集清单),它记录了所有确保现有的程序集正常工作的外部程序集,程序集的版本号,版权信息等
最新文章
- Java程序员从笨鸟到菜鸟之(一百零一)sql注入攻击详解(二)sql注入过程详解
- PE556
- MYSQL添加新用户 MYSQL为用户创建数据库 MYSQL为新用户分配权限
- Hibernate的集合映射与sort、order-by属性
- dede文章摘要字数的设置方法
- 华为oj 统计字符串不同字符
- linux性能优化常用命令
- 扩展GridView实现无数据处理
- Training little cats poj3735
- vConsole--针对手机网页的前端 console 调试面板。
- php header设置页面编码
- 字符串转json以及获取域名的参数
- 利用WSUS部署更新程序
- 【SEERC2018A】【XSY3319】Numbers
- PowerDesigner设置一对一关系
- shell脚本使用技巧3--函数调用
- js复制文本内容到剪贴板
- java struts2入门学习---中文验证、对错误消息的分离、结果(result)类型细节配置
- 通过微信服务号推送Zabbix告警
- C# string字节数组转换
热门文章
- HDU 4292Food(网络流的最大流量)
- TreeMap cannot be cast to java.lang.Comparable
- 为代码减负之&;lt;二&;gt;存储过程(SQL)
- 深入了解Libgdx中间Skin分类
- NYNU_省赛选拔题(8)
- 写手Remoting测试工具
- linux_shell_类似sql的orderby 取最大值
- 两种计算和输出n内5要么9除尽互惠
- DES加密深度优化——随机生成加密字符串
- api接口对于客户端的身份认证方式以及安全措施