编写实现接口所需的泛型类型的方法

Wac*_*Str 0 c# generics interface

假设有一个名为A的类,其方法如下:

public void SomeMethod<T>(ref T para1)
{
    ...
}
Run Code Online (Sandbox Code Playgroud)

现在我有一个接口(让我们称之为ITest)强制执行一个方法(让我们称之为RequiredMethod())并且有一堆实现此接口的类.

在SomeMethod的声明中,我怎么能提到T需要实现ITest以便我可以做这样的事情?

public void SomeMethod<T implements ITest>(ref T para1)
{
    ...
    para1.RequiredMethod();
    ...
}
Run Code Online (Sandbox Code Playgroud)

O. *_*per 6

使用通用约束:

public void SomeMethod<T>(ref T para1)
    where T : ITest
{
    // ...
}
Run Code Online (Sandbox Code Playgroud)