以下のコード行を呼び出すと、ClassBからGet()が実行されます。
オブジェクトは、キーワードClassC
を持つメソッドとして、として作成されます。new
理想的には、Get()
から呼び出す必要がありますClassC
。
Main()
{
ClassA obj = new ClassC();
lbl.Text = obj.Get();
}
public class ClassA
{
public virtual string Get()
{
return "from A";
}
}
public class ClassB : ClassA
{
public override string Get()
{
return "from B";
}
}
public class ClassC : ClassB
{
public new string Get()
{
return "from C";
}
}
誰かが理由を見つけるのを手伝ってくれませんか。