摘要:
托管代码 是直接编译成机器码,而是编译成中间语言 IL,由 CLR 托管运行。 托管代码就是把底层的一些操作(如内存的读取,释放)全都封装起来了,把有关内存管理的操作全都由CLR来管理, C 使用垃圾回收,而C++需要手动释放,C 是类型安全,性能较低,性能较高 CLR,公共语言虚拟执行系统 等于说 阅读全文
摘要:
垃圾回收原因 因为地址空间和存储的限制因素,托管堆要通过垃圾回收机制,来维持它的正常运作,保证对象的分配,不会“内存溢出”。 NET垃圾回收器的基本工作原理是:通过最基本的标记清除原理,清除不可达对象;再像磁盘碎片整理一样压缩、整理可用内存;最后通过分代算法实现性能最优化。 原文地址:http:// 阅读全文
摘要:
完全引用http://www.cnblogs.com/instance/archive/2011/05/24/2056091.html 驻留池:是一张记录了所有在代码中使用字面量声明的字符串实例的引用的表,由CLR维护 返回结果为true。 我认为的是s1和s2位于栈上面的不同位置,但栈上存储的引用 阅读全文
摘要:
C 当中的最终类 C 中用sealed关键字来修饰最终类,此类就不能被继承,例如string 委托 确定的引用方法名称,输入参数类型,返回参数类型,那么List就是一个输入参数可以是任意类型,返回类型是一个列表,卧槽,真简单。 为什么一般还见不到delegate的委托标识,可以直接写lambda表达 阅读全文
摘要:
子类和父类 在子类当中如果写和父类同名的方法可以吗? 不可以,子类和父类的方法名不能相同,相同就重复了,所以引用的时候可以用new方法来声明。 然后实例化的时候可以调用父类的方法吗? 应该是不可以的,因为实例化的是子类 阅读全文
摘要:
多态 我的理解就是同一个类型的实例调用“相同”的方法,产生的结果是不同的 重载:同一作用域下方法名相同但参数列表不相同 重写:被重写的方法一定是虚方法,用virtual标识,重写加上override标识。 父类当中定义 子类当中定义 虚方法 注意virtual在本类中就相当于没有virtual,对子 阅读全文