关于接口和类的泛型转换 [英] about generic convert of interface and class
问题描述
例如,我声明这样的代码:
公共类A
{}
公共类B:A
{}
公共接口ISubject
{}
公共类ConcreteSubject:ISubject
{}
如果我写这样的代码是错误的:
var collectionWithClass = new List ();
var baseCollectionWithClass =(List )collectionWithClass;
如果我写这样的代码是正确的:
var collection = new List< concretesubject>() ;
var baseCollection =(List< isubject>)集合;
i不明白为什么,我需要帮助,请!
for example, i declare code like this:
public class A
{}
public class B : A
{}
public interface ISubject
{}
public class ConcreteSubject : ISubject
{}
It is wrong if i write code like this :
var collectionWithClass = new List();
var baseCollectionWithClass = (List) collectionWithClass;
It is right if i write code like this:
var collection = new List<concretesubject>();
var baseCollection = (List<isubject>) collection;
i did't understand it's why, i need help, please!
推荐答案
我不明白你的问题是什么......
I don't understand what you question is about...
这篇关于关于接口和类的泛型转换的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!