2010年2月25日木曜日

静的Classで拡張Methodを定義してそのMethodを他のClassから使用してみる。

using System;

class SampleClass
{
    // 文字列を返す
    public string String(string s)
    {
        return s;
    }
}

static class ExtendMethodClass
{
    // 拡張メソッド
    public static void printOut(this SampleClass s)
    {
        Console.WriteLine(s.String("拡張メソッド"));
    }
}

class MainClass
{
    static void Main()
    {
        // SampleClassをインスタンス化
        SampleClass sample = new SampleClass();

        /* SampleClassではないClassで定義された
         * 拡張メソッドを呼び出す
         * 出力値:拡張メソッド */
        sample.printOut();
    }
}

0 コメント:

コメントを投稿