コード:
abstract class Parent{
void changeChild(){
}
}
class Child1: Parent{
}
class Child2: Parent{
}
//-----
Parent parent = new Child1(); //instantiated as Child1
parent.changeChild(); //change type of this class to Child2
したがって、親は Child2 クラスのインスタンスである必要があります。
Child1 が Child2 と異なる可能性があることは理解していますが (フィールド、メソッドの増減)、このオブジェクトでコンストラクターを呼び出したいだけですが、これは許可されていません。
単純
parent = new Child2();
できますが、10個ほどの子クラス(成長中)があり、これを親クラスに移動したい
これはどういうわけかC#で可能ですか?
ありがとう