我正在制作一个小项目,我试图弄清楚是否有可能获得从特定接口继承的每个类的实例。
这是我要完成的简化示例:
public interface IExample
{
string Foo();
}
public class Example1 : IExample
{
public string Foo()
{
return "I came from Example1 !";
}
}
public class Example2 : IExample
{
public string Foo()
{
return "I came from Example2 !";
}
}
//Many more ExampleN's go here
public class ExampleProgram
{
public static void Main(string[] args)
{
var examples = GetExamples();
foreach (var example in examples)
{
Console.WriteLine(example.Foo());
}
}
public static List<IExample> GetExamples()
{
//What goes here?
}
}
GetExamples 方法是否有任何方法(没有硬编码)来返回一个列表,其中包含从接口 IExample 继承的每个类的实例?您可以提供的任何见解将不胜感激。