using System;
class SampleClass
{
/* インスタンスメンバーn,
* 静的メンバーmを宣言 */
public int n;
public static int m;
string s1="インスタンスメンバー";
string s2="静的メンバー";
public void printOut()
{
Console.WriteLine
("{0}:{1} {2}:{3}",s1,n,s2,m);
}
}
class MainClass
{
static void Main()
{
// 静的メンバーmに値を代入
SampleClass.m = 1;
/* SampleClassをインスタンス化して
* sample1,sample2を定義 */
SampleClass sample1 =
new SampleClass(),
sample2=new SampleClass();
/* sample1のインスタンスメンバーnに
* 2を代入 */
sample1.n = 2;
sample1.printOut();
/* 静的メンバーはインスタンス間で
* 共有されmは1、インスタンスメンバーは
* インスタンス間で共有されないことを
* 確認(よってインスタンスメンバーnは
* 2ではなくint型の既定値の0になる) */
sample2.printOut();
// 静的メンバーの値を変更
SampleClass.m = 10;
// すべてのインスタンスに反映される
sample1.printOut();
sample2.printOut();
}
}
0 コメント:
コメントを投稿