子の追加と削除、親の処理、祖先や子孫の検索などのメソッドを備えた基本クラス Node を作成しました。
ここで、派生型 TreeNode を作成したいと思います: Node は、これらすべての Node 機能の恩恵を受けますが、同時に、子と親が同じ TreeNode 型を持つように制限します。今のところ、私はまだ子と親の型として Node を持っています。
Node クラスのプロパティとメソッドの引数の型を、手動でオーバーライドまたは「新規」にせずに、派生クラスの型と一致するように変更することはできますか?
class Node
{
public TypeOfThisInstance Parent { get; }
}
class TreeNode : Node
{
}
TreeNode.Parent
TreeNode
ではなく である必要がありNode
ます。