.NET Framework 包含两大核心组件:公共语言运行时和.NET Framework类库。
1.公共语言运行时:英文名Common Language Runtime,简称 CLR。几个概念:托管模块、CLR头、元数据、IL代码、程序集2. .NET Framework类库:基类库 英文名 Base Class Library 简称BCL。
3.通用类型系统。英文名Common Type System 简称CTS。
4.公共语言规范 英文名Common Lahguage Specification 简称 CLS。
5.通用语言基础架构(Common Language Infrastructure,简称CLI)是一个开放的技术规范。
6.强命名程序集及部署、hash技术
System.String类型对象
1.尽管它是引用类型,但是编译器不允许使用new根据一个文本常量来创建一个字符串对象,而是必须使用简明的声明语法来声明及初始化,对字符串的初始化值是直接被编译进元数据的。比如如下定义一个字符串变量:string name1 = "Jack";
2.字符串对象一旦创建,在整个进程的生命周期中是不可变的,StringBuilder提高效率
3.驻留集。这是实验一中可以说明的,用hash表实现,自动调用调用对象的Intern方法。
典型例子:string str1 = "abc";
string str2 = "abc";
Console.WriteLine(object.ReferenceEquals(str1,str2)); //True
注意例外:但为new string(char[])创建的字符串对象会重新分配内存
4.NET Framework使用16位的Unicode编码
5.字符串的比较通常有以下几种方式:
比较符号 ==、实例级和静态的Equals方法、CompareTo方法、String.Compare(CompareTo静态版本)方法、String.CompareOrdinal方法