继承构造函数错误

本文关键字:错误 构造函数 继承 | 更新日期: 2023-09-27 18:35:13

所以我有我的子类 Line 继承了我的父类 Point 并且我没有在我的子类中使用基类的构造函数,但我收到此错误:

'Shape.Point' 不包含接受 0 个参数的构造函数

这是我的家长类:

public class Point
{
   public Point(int x, int y)
   {
       X = x;
       Y = y;
   }
   public int X { get; set; }
   public int Y { get; set; }
}

这是我的孩子班:

public class Line : Point
{
   public Point Start { get; set; }
   public Point End { get; set; }
   public double Lenght { get; set; }
    public Line(Point start , Point end)
    {
        Start = start;
        End = end; ;
    }

    public double Calculate_Lenght()
    {
        Lenght = System.Math.Sqrt((End.X - Start.X) ^ 2 + (End.Y - End.X) ^ 2);
        return Lenght;
    }
}

继承构造函数错误

Point使用 ctor 为

public Point(int x, int y)
{
   X = x;
   Y = y;
}

Line中,您还必须调用此构造函数或实现它

public Line(int x, int y)
{
}

public Line(Point start, Point end)
   : base (...)
{
}

虽然这似乎没有意义,但我想你真的不想用Point来扩展Line

或者,如果 Point 具有要继承的一些常见功能,则可以为 Point 提供一个无参数构造函数。