有符号和无符号的区别:首先得知道内存长度是有限的,有符号的表示为-128~127,无符号表示为0~256 就相当于多了一倍。
string是采用的Flyweight的设计模式,string类型不可变,一旦创建之后就不能被修改。字符串的内存是分配在托管堆上的
常量池:(Constant Pool)在编译期被确定,并被保存的在已经编译的.class文件中的一些数据,它包括了关于类,方法,接口的常量。
使用new string() 创建的字符串不是常量,不能被放入到常量池中,它有自己的地址空间。
String str1="Audient"; String str2=str1; str1+="Azure";
最后一步操作,发生了一下几件事件:
1:开辟一块足够大的临时内存来容纳str1和"Azure";
2:赋值str1到临时区的开始处
3:赋值"Azure"到临时区的结尾处
4:str1丢弃对就对象的引用
5:为str1再一次分配内存区
6:将临时储存内的字符串值复制到新开辟的内存区,指向其引用。
字符串驻留 它能保证在一个线程内的某个字符串在内存中只分配一次。CLR初始化创建了一个内部的哈希表Dictionary<Tkey,Tvalue> 键是String 值是指向托管堆中该字符串对象的引用。
字符串的比较分为两种1:引用2:值 一个字符串是由一系列的Unicode编码组成的。
区域语言文化
System.Globalization.cultrueInfo类
(1):CurrentUICulture:决定如何加载窗体资源以及窗体元素以什么语言显示
(2):CurrentCulTure:日期格式 数据格式,货币格式
类中的访问修饰符默认是private 接口中默认是public 不用写 但是java中可以写
接口可以不用去实现父类接口的方法
尽量不要让父类继承接口
WndProc 是Windows系统向应用程序发送的一系列消息之一,每个窗口都会有一个窗口过程的回调函数,分别是句柄 WPARAM LPARAM