- 博客(10)
- 收藏
- 关注
原创 字符串的不可变性
对象一旦创建,在整个进程的生命周期中是不可变的,无法对其进行加长、缩短、改变等操作,既然它不会变,所以也就不存在线程同步的问题,哪怕是皇天老儿创建的线程都无法对其进行改变。如下代码: string str1 = "Jim"; string str2 = str1; Console.WriteLin
2014-06-13 21:28:50 1764
原创 字符串的定义
字符串被定义为System.String类型的对象,既然它是引用类型,那么一个未初始化的对象声明将保留为null,并且它的内存只能在堆上分配。它在内部维护的是字符Char的集合,所以它有一个属性Length来表示Char集合中元数的个数。来看一下String类型的定义:String实际上是继承了System.Object类型,同时还实现了一系列接口,如Ienumberable、ICompa
2014-06-13 21:27:18 889
原创 .net自定义控件(三)
第三方控件(拿来主义)说明:搜索别人提供的第三方控件(dll文件),按说明安装使用。例如:SideBar,侧边栏控件步骤:1,在项目中添加“引用”,按提示操作;2,在工具箱可见该控件,拖动到窗口中;3,为控件编程;调试:1,保存,重新生成项目;2,观察运行效果;补充:关于仿QQ侧边栏效果,可以阅读链接:http://blog.csdn.net/zhouf
2014-06-13 21:23:26 295
原创 .net自定义控件(二)
派生法说明:以系统的某个控件为父类,派生一个新控件。例如:以Button类作为父类,设计一个自定义控件MyButton(可以设置提示文本的按钮)步骤:1,在项目中添加“自定义控件”,类名MyButton,父类为Button;2,为控件编程,添加自定义属性等;3,为控件编程,添加方法(Public);4,注意,此控件在设计视图窗口不可见;调试:1,保存,重新生成项
2014-06-13 21:22:00 331
原创 .net自定义控件(一)
组合法说明:将系统提供的多个控件组合成一个控件使用。例如:将ListBox和TextBox组合成一个自定义控件MyDemoControl步骤:1,在项目中添加“用户控件”,查看代码可以父类为UserControl;2,为控件设计“界面”;3,为控件编程,添加自定义属性等;4,为控件编程,添加方法(Public)调试:1,保存,重新生成项目;2,在工具栏中,能
2014-06-13 21:20:55 329
原创 .net 装箱与拆箱
装箱是将值类型转换为引用类型 ;拆箱是将引用类型转换为值类型 利用装箱和拆箱功能,可通过允许值类型的任何值与Object 类型的值相互转换,将值类型与引用类型链接起来 例如: int val = 100; object obj = val; Console.WriteLine (“对象的值 = {0}", obj); 这是一个装箱的过程,是将值类型转换为引用类型
2014-06-08 00:07:02 257
原创 const readonly关键字声明
使用const关键字声明在编译时设置其值并且永远不能更改其值的字段,在对程序进行编译的时候,编译器会把所有const常量全部替换为常数。使用readonly关键字声明在程序运行期间只能初始化“一次”的字段,可以在声明语句中初始化该字段,也可以在构造函数中初始化该字段。初始化以后,用readonly声明的字段的值就不能再更改。 二者区别: readonly常量
2014-06-07 23:59:53 426
原创 string和stringbuilder的区别
string的“+”操作就是根据StringBuilder(或 StringBuffer)类及其 append 方法实现的。String不可变其实就是说一个String对象创建之后不能再在这个对象上做其他操作(如追加,删除一个字符),只能通过创建别的String对象来获取这个效果,而StringBuilder就可以在一个StringBuilder对象上进行改变:String str =
2014-06-05 23:51:01 254
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人