2013年3月3日

关于GC

摘要: 小结:1. 每个应用程序都有一组根(Root),一个根是一个存储位置,其中包含着一个指向引用类型对象的内存指针。该指针或者指向一个托管堆中的对象,或者被设为null。如:静态字段被认为是根,方法参数或局部变量也被认为是一个根,对于变量,仅当变量是引用类型时才被认为是根,值类型的变量永远不被认为是根。2. 垃圾收集当垃圾收集器开始工作时,它会首先假设托管堆中的所有对象都是可收集的垃圾。也就是说,垃圾收集器假设线程堆栈中没有一个变量引用堆中的对象,没有CPU寄存器引用堆中的对象,而且也没有静态字段引用堆中的对象。A. 垃圾收集的第一步(标记阶段)垃圾收集器遍历线程堆栈,检查所有的根,如果发现根引用 阅读全文

posted @ 2013-03-03 20:08 Gcam 阅读(275) 评论(0) 推荐(0) 编辑

关于接口与抽象类

摘要: 小结:1. 接口只有方法名,没有方法体,由继承自它的类提供所有方法的实现,C#中规定类只能单继承,但可以通过接口来实现多继承,即一个类可以继承多个不同的接口2. 定义一个接口a. 不能定义构造函数b. 不能定义实例成员c. 不能定义静态成员3. 调用接口方法如:public sealed class String : IComparable, ICloneable, IConvertible, IComparable<string>, IEnumerable<char>, IEnumerable, IEquatable<string>String继承了多个接 阅读全文

posted @ 2013-03-03 10:12 Gcam 阅读(172) 评论(0) 推荐(0) 编辑

导航