代码检查:参数可以声明为基类型
如果方法参数被声明为具体类型,但实际上方法只通过基类型或接口使用该参数,则此检查会报告。 使用更不具体的类型可以让 API 更加灵活,同时不会改变方法的行为。
示例
interface IFoo
{
void Run();
}
class Foo : IFoo
{
public void Run() { }
}
class C
{
private static void Execute(Foo foo)
{
foo.Run();
}
}
interface IFoo
{
void Run();
}
class Foo : IFoo
{
public void Run() { }
}
class C
{
private static void Execute(IFoo foo)
{
foo.Run();
}
}
快速修复
将参数类型更改为建议的基类型或接口。
2026年 5月 8日