摘要:
假如一个泛型没有任何约束,那么它的应用是非常有限的,它不能对实参作任何类型上的保证,这时候就需要使用到泛型的约束:主约束 和 次约束泛型的主约束和次约束均要求泛型的实参必须满足一定的规范。C#编译器在编译的过程中可以根据约束条件,对所有泛型的类型实参进行检查,以确保满足条件。一个泛型参数可以至多拥有一个主约束,主约束可以是一个引用类型,类和结构。如果指定一个引用类型,则实参必须是该类型或者该类型的派生类型。类规定了实参必须是一个引用类型结构规定了实参必须是一个值类型一个泛型可以有多个次约束,但同时拥有主约束和次约束的泛型参数,实参必须同时满足主约束和次约束。View Code //主要约束限定 阅读全文
摘要:
工作中一直使用泛型,但突然想想,为什么要使用泛型,还真说不出个二三四来,所以看看书,总结一下!Array 比如数组,继承自System.ArrayArrayList Collection对象, 继承自System.Collections.List<T> 泛型, 继承自System.Collections.使用泛型的好处1. 使用泛型最大限度的重用代码,保护类型的安全以及提高效率。(使用参数T, 大大简化类型之间的强制转换或装箱操作的过程)2. 使用泛型可以创建集合类。3. 使用泛型类型可以创建自己的泛型接口,泛型方法,泛型类,泛型事件和泛型委托。4. 使用泛型类型可以对泛型类型进行 阅读全文