这是一个范型类,他接受三个对象,分别是TInner,TItem,TKey,用where 关键字限制TInner必须为FLInnerItem的范型类型,可以使用 new 运算符创建类型参数的实例;但类型参数为此必须受构造函数约束 new() 的约束。
这做的目的,是为了使这个类,使用更广泛,并且传入的数据是正确的。
where 约束我明白了,我也自己写代码试了试。
但是我现在还有不明白的地方,那就是new()是干什么用的。我现在只知道new()这个是前面那个where的约束的一个条件,但是这里加new()和不加有什么区别。
new()这个我怎么理解!
@learnWindowsPhone: 可以使用 new 运算符创建类型参数的实例
你可以查詢一下 ,泛型類的好處。
其實,這個是泛型繼承,條件約束。
泛型是強類型,避免運行時轉換。