我有一个静态列表:收藏列表有多种类型的用户定义对象?
public static List<IMachines>mList =new List<IMachines>();
名单摄入量是两个不同类型的对象(机)的:
IMachines machine = new AC();
IMachines machine = new Generator();
如果将项目添加到列表之后,我想搜索特定的机器通过其名称属性,然后在使用foreach循环遍历后,如果该项目在列表中找到...我应该知道该项目是AC
类型还是Generator
类型?
“我怎么知道,如果该项目是AC型或发电机型的?”你不是。通过“IMachines”接口来引用对象,你只是说只有那个接口指定的东西才是你关心的东西。有办法解决它,但正确的答案通常是解决设计问题,需要你做到这一点。 – Telastyn
有不同的方法来做到这一点。 ''''作为'运营商,也是我的答案中所描述的。但Telastyn就在这里。您应该修复设计问题并将所需的一切通过界面公开。 –
我应该使用类引用变量而不是接口? ... –