using System;
class BaseClass
{
// 保護レベルは既定のprivate
string s = "BaseClass";
// setの保護レベルをprotectedに設定
public string S
{
protected set { this.s = value; }
get { return this.s; }
}
}
class DerivedClass : BaseClass
{
public void set(string s)
{
// 派生クラスからならアクセス可能
this.S = s;
}
}
class MainClass
{
static void Main()
{
DerivedClass sample = new DerivedClass();
/* setはprotectedなので派生クラス以外からは
* アクセスできない
sample.S = "MainClass"; */
// 出力値:BaseClass
Console.WriteLine(sample.S);
// 派生クラスのMethodを使用してsの値を設定
sample.set("DerivedClass");
// 出力値:DerivedClass
Console.WriteLine(sample.S);
}
}
0 コメント:
コメントを投稿