C#一些基础
问:泛型是什么?
答:
泛型(Generic)是一种特殊的机制。用于“算法重用”,比如排序,搜索,一般用在集合类中。它允许类型(Type)作为参数,在类、结构、接口和方法使用。
歪答:
泛型相当于空头发票,随便你往里头填什么内容,反正都能报销,但是不填肯定不行。
问:C#中值类型和引用类型的区别?
答:
值类型直接存在堆栈中,引用类型存放在托管堆中,堆栈只存放它的地址;操作值类型速度要比操作引用类型快;值类型不能被垃圾回收,引用类型可以。
歪答:
值类型就像现金,引用类型就像存折。
问:什么是垃圾回收机制?
答:
垃圾回收机制是为了解决内存泄露的机制。所有在托管堆中已分配的,但是没有被引用的对象被成为内存垃圾。垃圾回收机制就是用于用于自动收回内存垃圾的一套方法。
歪答:
垃圾回收机制就是帮助乱丢垃圾的人回收垃圾的机制。
问:什么是委托?
答:
委托是类型安全的函数指针。是对函数的引用,但是可以引用多个函数,称为多路广播。
歪答:
函数就是房东,委托就是房屋中介。
问:什么是装箱和拆箱?
答:
装箱是将值类型转换为引用类型
拆箱是将引用类型转换为值类型
利用装箱和拆箱功能,可通过允许值类型的任何值与Object 类型的值相互转换,将值类型与引用类型链接起来
歪答:
装箱就是把钱存进银行,拆箱就是把钱从银行里取出来
问:关于this关键字?
答:
在C#中,this关键字代表当前实例,我们可以用this.来调用当前实例的成员方法,变量,属性,字段等;
也可以用this来做为参数状当前实例做为参数传入方法.
还可以通过this[]来声明索引器
永远记得:this出现了,代表它所在的类的对象