c#では、既存の静的クラスを直接拡張することはできません。これは、静的クラスには、拡張法に必要なインスタンス変数がないためです。 代替:静的パッケージ
回答に記載されているように、ターゲットの静的クラスをパッケージ化するために静的パッケージクラスを作成して、拡張機能を提供できます。このパッケージクラスには、これらのメソッドが元の静的クラスメソッドを呼び出して、抽象化の層を効果的に提供します。
たとえば、クラスを拡張するには、
:と呼ばれる静的パッケージクラスを作成できます。
このパッケージングデバイスを使用して、メソッドを呼び出すことにより、Console
の関数に間接的にアクセスできます。
ConsoleWrapper
public static class ConsoleWrapper { public static void WriteBlueLine(string text) { Console.ForegroundColor = ConsoleColor.Blue; Console.WriteLine(text); Console.ResetColor(); } }
以上がC#の静的クラスは、拡張メソッドを使用して拡張できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。