多个级别的继承

本文关键字:继承 | 更新日期: 2023-09-27 18:36:29

如果我有多个子类,我只想确保我正在做并正确考虑继承和构造函数。我的类看起来像这样,Shape 是基类,其他派生类

Shape<-----Shape2D<------Box

这段代码正确吗? 它正在工作,但我只是想知道这是否是最好的方法?

    public Shape(int inputA, int inputB)
    {
        valueA = inputA;
        valueB = inputB;
    }
    public Shape2D(int inputA, int inputB) : base(inputA, inputB)
    {
    }
    public Box(int inputA, int inputB) : base(inputA, inputB)
    {
    }

多个级别的继承

是的,这对我来说似乎是正确的。

如果不想在后代类中执行任何特殊初始化,可以将初始化任务委托给层次结构中的基类。在那里定义的成员变量,因此它可以处理任何需要的初始化。

如果你在后代中需要一些特殊的东西,那么你必须在那里处理特殊的初始化。但是,在您需要完全相同的初始化之前,我认为这是建议的方法。

你在问题中这样想吗?

没有从

您的代码示例中跳出任何内容 - 链接看起来很好,并且在构造Box时,valueAvalueB将按预期填充。

不确定"最佳方式"是什么意思 - 以这种方式链接构造函数绝对没问题。