主要内容有: 可选参数和命名实参, 泛型的可变性, 动态类型
1,可选参数和命名实参
1.1可选参数
可选参数和命名实参就如同一对好基友, 因为它们经常一起使用....这里的解决方案就是仍然使用同一个Check方法,但是给这个Check方法新添加一个可选参数来判断到底是执行的哪个操作, 然后根据不同的操作去做相应的修改....有了命名实参, 可选参数的变得更加强大了是不是? 哈哈, 确实是这样.
2,泛型的可变性
在C#2.0 中, 泛型并不具备可变性, 这种是指斜变性和逆变性....而在C#4.0中引入了泛型的协变性和逆变性.
2.1协变性
协变性指的是泛型类型参数可以从一个派生类隐式转化为基类...., AddRange方法接收的参数类型为IEnumerable, 该接口的定义为IEnumerable, 因为其泛型参数有out关键字标识,
所以IEnumerable泛型的类型参数