so true

心怀未来,开创未来!
随笔 - 160, 文章 - 0, 评论 - 40, 引用 - 0
数据加载中……

.NET零散笔记

.NET骨架代码:
using <namespace>
namespace <your optional namespace>
class <your class>
{
 public static void Main(){
 }
}

不能用using指定类,但可以为类使用别名:
using alias=class

C#命名规范:
方法名使用第一个字符大写的Pascal规则;
变量名使用第一个字符小写的camel规则。

公共类型系统CTS(Common Type System)是在.NET中定义的类型标准,而且还支持用户自定义新的类型来进行类型的扩展。任何以.NET为平台的语言都必须建立该语言的数据类型到CTS类型之间的映射。所有.NET语言共享这一类型系统,实现各种语言之间的无缝的互操作。

装箱(boxing)与开箱(unboxing):
装箱就是将数值类型转换为引用类型,此过程不需要显示转换。
如int foo=42;object bar=foo;
开箱就是将引用类型转换为数值类型,此过程必须显示转换。
如int foo2=(int)bar;
通过装箱与开箱使得C#中的一切开起来都是对象,但同时又避免了当所有一切都是真正的对象时对系统要求过高。

引用类型都是在堆上分配的。

⑴浅复制(浅克隆)
被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象。换言之,浅复制仅仅复制所考虑的对象,而不复制它所引用的对象。另解:浅复制:两个或多个相同类型的指针指向相同的内存,也就是它们指向相同的数据,如果改变其中之一,其它的也将改变。
⑵深复制(深克隆)
被复制对象的所有变量都含有与原来的对象相同的值,除去那些引用其他对象的变量。那些引用其他对象的变量将指向被复制过的新对象,而不再是原有的那些被引用的对象。换言之,深复制把要复制的对象所引用的对象都复制了一遍。另解:深复制:将一个指针所指的数据复制给另外一个指针所指的内存,两个指针有自己的数据,如果改变一个,另外的不受影响。

posted on 2008-02-25 16:54 so true 阅读(263) 评论(0)  编辑  收藏 所属分类: .NET


只有注册用户登录后才能发表评论。


网站导航: