有时要确保泛型类使用的类型参数是提供了特定方法的类型。
例如:假设要定义一个PrintableCollection类,但是又想该类储存的所有对象都提供了Print方法,可以用约束来规定该条件。
定义PrintableCollection类如下:
1 public class PrintableCollection<T> where T : IPrintable
这个类编译时,编译器会验证用于替换T的类型实现了IPrintable接口,如果没有实现这个接口,会出错