泛型集合中对继承类的转换

http://www.cnblogs.com/jinzhao/archive/2012/02/07/2341284.html

虽然问题已经解决了但是文中Error2的原因还是没想明白,求解答。


潇潇雨雨
浏览 506回答 2
2回答

子衿沉夜

你问:List<B>为什么不能显示转换为List<A>,那我得先问:为什么你认为List<B>能显示转化为List<A>?C#有它自己的规则,当你发现XXX不行的时候,第一反应不应该是“为什么XXX不行啊”,而是“语言有没有说过XXX是行的”,如果没有说过,那就是不行。

开心每一天1111

泛型在编译生成的时候,会发List<AClass>这个类型编译成System.Collections.Generic.List`1[CNBlogs.Zzk.Tests.AClass],而List<BClass>编译成System.Collections.Generic.List`1[CNBlogs.Zzk.Tests.BClass],但是编译器不认为这俩类型有啥继承实现的关系~
打开App,查看更多内容
随时随地看视频慕课网APP