c#中Attribute的使用

摘要: Attribute(特性、标记、标签),在c#中用于表示类、属性、方法等具有某种特性,使用的格式[Attribute名字(构造函数的参数)],例如在一个类上边写上[Serializable],就表示这个类可以序列化,具有可序列化的特性。其实这个特性也是一个类,这个类继承自Attribute类,它本身并没有什么特殊的地方,也就是说这个类内部对于这种特性没做什么实质上的操作,仅仅是标记为具有某种特性而已,比如写上[Serializable],表示可以序列化,而真正的序列化是需要调用BinaryFormatter的Serialize方法。下面通过一个小实例来说明特性的使用:自定义一个xml序列化方法 阅读全文
posted @ 2012-09-17 09:19 无所畏惧 阅读(527) 评论(0) 推荐(0)

c#中对象的深拷贝和浅拷贝

摘要: c#中的深拷贝和浅拷贝,首先说它们在内存堆中都是产生了一个新的对象,而不是只复制了引用,指向同一个对象。它们的不同之处在于,对象内部的引用类型拷贝(string类型除外,因为他有自己的特性)。浅拷贝:对象内部引用类型只拷贝引用,实质上还是指向内存堆中同一个对象;深拷贝:产生了新的对象,在内存堆中指向不同的对象。下面是在c#中实现深拷贝和浅拷贝的代码:1、首先定义2个类电脑类 1 [Serializable] 2 public class Computer:ICloneable 3 { 4 public Computer(string brand) 5 ... 阅读全文
posted @ 2012-09-16 20:49 无所畏惧 阅读(258) 评论(0) 推荐(0)
点击右上角即可分享
微信分享提示