最終更新:2022-08-22 (月) 06:15:11 (605d)  

拡張メソッド
Top / 拡張メソッド

概要

  • 拡張メソッドを使用すると、新規の派生型の作成、再コンパイル、または元の型の変更を行うことなく既存の型にメソッドを "追加" できます。
  • 拡張メソッドは静的メソッドですが、拡張された型のインスタンス メソッドのように呼び出します。

仕組み

  • 静的メソッドをインスタンスメソッドと同じ形式で呼び出せるようにできるもの

書き方

  • 静的クラス中に、 第一引数に this キーワードを修飾子として付けた static メソッドを書きます。
    static class Extensions
    {
        public static int Parse(this string str)
        {
            return int.Parse(str);
        }
    }

呼び出し方

  • string s = "This Is a Test String.";
    string s1 = StringExtensions.ToggleCase(s); // 通常の呼び出し方。
    string s1 = s.ToggleCase();                 // 拡張メソッド呼び出し。

メモ

  • using ディレクティブで指定した名前空間中のにある拡張メソッドが参照される

参考