主要内容有: 可选参数和命名实参, 泛型的可变性, 动态类型
1,可选参数和命名实参
1.1可选参数
可选参数和命名实参就如同一对好基友, 因为它们经常一起使用....IComparer类型,
但因为IComparer泛型接口支持逆变, 所以可将object转化为string类型.
2.3协变和逆变的注意事项
(1)只有接口和委托才支持协变和逆变...当我们使用由dynamic关键字限制的变量时, 编译器并不知道它的类型, 该类型智能在程序运行时才能被确定.
动态类型的定义为: dynamic i = 5;
动态类型和静态类型到底有什么不同呢?...他类型, 而编译器却检测出"+"运算符无法应用于object和int类型....要让编译器通过, 我们必须使用强制类型转换, 把object转换为int. 即obj = (int)obj + 10;
但是动态类型的引入到底有什么好处呢?
1,可以减少强制类型转换的使用.