What
约束类型:struct、class、new()、类名(该类或者为派生类)、接口名(派生类)、泛指字母(该泛型类或者为泛型的派生类)
where进行修饰
Why
对占位的类型进行约束,有一定的限制
约束自己去组合
How
where T:class,new()
class MyClass<T,M> where T :class,M
class MyClass<T,M> where T :class where M:struct