与方法类型的接口取决于实现 class

Interface with method type depending on implementing class

我正在编写一个接口,该接口具有一个应该 return 对象列表的方法。列表中的对象将取决于实施 class.

例如:

interface IPlayMovie
{
   List<MoviePlayer> RetrievePlayersByMovie();
}

是否可以有一种方法,其中列表的 return 类型取决于实现此接口的 "MoviePlayer"(或 class)?如果可以,怎么做?

注意:实现此接口的 classes 不一定是子classes,并且没有足够相似的对象结构来归入一个家族。

它被称为通用接口,例如:

interface IDataProvider<T>
{
    List<T> Retrieve();
}

class MoviePlayerProvider : IDataProvider<MoviePlayer>
{
    public List<MoviePlayer> Retrieve() { }
}