总结自 : http://www.58kaifa.com/article/81
1 值类型与引用类型的区别 ValueType and ReferenceType
值类型包括 结构和枚举 还有一些特殊的值类型(简单类型):byte,int---继承自System.ValueType类型
引用类型包括 类、接口、委托等等-------------------------------继承自System.Object 类型
值类型存储在内存栈中,引用类型数据存储在内存堆中,而内存单元中存放的是堆中存放的地址。
值类型存取快,引用类型存取慢。
值类型表示实际数据,引用类型表示指向存储在内存堆中的数据的指针和引用。
栈的内存是自动释放的,堆内存是.NET中会由GC来自动释放。
2 ArrayList和List的主要区别
ArrayList会把所有插入其中的数据都当做Object来处理
3 GC(垃圾回收)产生的主要原因,如何避免
GC用于释放堆中的内存
产生原因: 1 减少new产生对象的次数
2 使用公用的对象(静态成员)
4 string
5 foreach
6 sealed 修饰类或者方法
修饰类时,其他类无法继承该类
修饰方法时,子类无法重新该方法
7 private public protected internal
8 C#反射的实现原理
审查元数据并收集关于它的类型信息的能力--什么鬼
9 Transform 继承自 Compoment