コードインスペクション:コンストラクターのパラメーターは基本型で宣言できます
このインスペクションは、コンストラクターが基本型またはインターフェースメンバーのみを使用しているにもかかわらず、コンストラクターパラメーターが具象型として宣言されていることを報告します。 これにより、構築された型が特定の実装に依存せず、より多くの呼び出し元が互換性のあるオブジェクトを渡せるようになります。
サンプル
interface ILogger
{
void Log(string message);
}
class ConsoleLogger : ILogger
{
public void Log(string message) { }
}
class Service
{
public Service(ConsoleLogger logger)
{
logger.Log("started");
}
}
interface ILogger
{
void Log(string message);
}
class ConsoleLogger : ILogger
{
public void Log(string message) { }
}
class Service
{
public Service(ILogger logger)
{
logger.Log("started");
}
}
クイックフィックス
コンストラクターのパラメーター型を、推奨される基本型またはインターフェースに変更してください。
2026 年 6 月 12 日