现在的位置: 首页 > 综合 > 正文

学习了三节的WebCast,把重要的标题都写下了,主要是理解其作用.等到要用的时候再研究.

2013年05月09日 ⁄ 综合 ⁄ 共 825字 ⁄ 字号 评论关闭

本文内容来自webcast

C#泛型:
  泛型可以及解决的问题:通过泛可以定义类型安全类,而不会损害类型安全(编译器级支持),性能(值类型性能提高200%左右,引用类型性能提高100%左右),或工作效率;
泛型的实现:在IL和CLR本身中具有本机支持;
Default关键字:如果希望在堆栈为空时不引发异常而返回堆栈中存储的类型的默认值,可用Default(T);
泛型别名:using name = Class<string,int>;
泛型约束:在定义泛型类时,可以对客户端代码能够在实例化类时用于类型参数的类型种类施加限制。如果客户端代码尝试使用某个约束所不允许的类型来实例化类,则会产生编译时错误。这些限制称为约束。约束是使用 where 上下文关键字指定的。典型的出错例子:if(T1==T2) //will not complile;因为编译器不知道T1和T2(实例化时的实际类型)是否支持==运算符.如当T1和T2为结构时;
派生约束;
new()约束:
struct约束;
class约束;
不能将引用/值类型约束与基类约束一起使用,因为基类约束涉及到类;
不能使用结构和默认构造函数约束,因为默认构造函数约束也涉及到类;
虽然你可以使用类和默认构造函数约束,但这样做没有任何价值;
可以将引用/值类开约束与接口约束组合起来前提是引用/值类型约束出现在约束列表的开关;
泛型和强制类型转换;is,as;
继承和泛型;
泛型方法;
泛型委托;
泛型和反射;

其它
分部类(Partial Classes)
迭代器(Iterators)
可空类型(Nullable Types)
匿名方法(anonymous Methods)
属性访问器可访问性(Property Accessor Accessibility)
委托中的协变与逆变
命名空间别名限定符;
IDE
VS2005代码段功能;
重构:
 提取方法;
 重命名;
 封闭字段;
 提取接口;
 将局部变量提升为参数;
删除参数;
 重新排列参数;
类设计器
C#调试:编辑并继续;

 

抱歉!评论已关闭.