これは非常に簡単な例ですが、私は困惑しており、これを動作させることはできません。親クラスの値を設定し、派生クラスにアクセスしてください
親クラス "1"に設定された値を "1"をチェックすることによって派生クラスから取得しようとしていますが、常にelse文 "3"を返します。派生クラス内からこの値にアクセスするには? 。 これを修正する方法のお勧めは歓迎されます。
class Program
{
static void Main(string[] args)
{
Parent parent = new Parent();
Child child = new Child();
parent.SetA = 1;
double test = child.GetA();
Console.WriteLine(test);
}
}
class Parent
{
protected int A;
public int SetA
{
get { return A; }
set { A = value; }
}
}
class Child : Parent
{
public int GetA()
{
if (A == 1)
{
return 2;
}
else
{
return 3;
}
}
}
'child'と' parent'は2つの異なるオブジェクト(インスタンス)ですので、変数の状態を変更しても変数に影響はありません。あなたが何を期待しているのか分かりません。私は何か見落としてますか? –