2010年1月19日火曜日

既定のコンストラクタ、パラメータ付きでそのパラメータをthisキーワードを使用し自身のメンバにそのパラメータの値を代入するコンストラクタを定義し、そのコンストラクタのClassをインスタンス化して既定のコンストラクタ、パラメータ付きのコンストラクタをそれぞれ呼び出し使用してみる。

using System;


class SampleClass
{
    public string s;
    public int n;


    // 既定のコンストラクタ
    public SampleClass()
    {
        s = "既定のコンストラクタ";
        n = 1;
    }


    // パラメータ付きのコンストラクタ
    public SampleClass(string s, int n)
    {
        this.s = s;
        this.n = n;
    }
}


class MainClass
{
    static void Main()
    {
        /* SampleClassをインスタンス化して
         * 既定のコンストラクタ、
         * パラメータ付きコンストラクタを呼び出す */
        SampleClass sample1 = new SampleClass(),
            sample2 = new SampleClass
                ("パラメータ付きのコンストラクタ", 2);


        /* 出力値
         * 既定のコンストラクタ:1
         * パラメータ付きのコンストラクタ:2 */
        Console.WriteLine
            ("{0}:{1}¥n{2}:{3}"
            , sample1.s, sample1.n,
            sample2.s, sample2.n);
    }
}

0 コメント:

コメントを投稿