C# 继承构造函数错误

C# 继承构造函数错误,c#,class,inheritance,C#,Class,Inheritance,因此,我的子类行继承自父类点,并且我在子类中不使用基类的构造函数,但我得到以下错误: “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 cl

因此,我的子类行继承自父类点,并且我在子类中不使用基类的构造函数,但我得到以下错误:

“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;
    }
}

您可以使用
点进行扩展,该点的系数为

public Point(int x, int y)
{
   X = x;
   Y = y;
}
Line
中,您必须调用或实现此构造函数

或者

public Line(int x, int y)
{
}

虽然这似乎毫无意义,但我想您确实不想用
点扩展


或者,如果Point有一些您想要继承的公共功能,您可以给Point一个无参数构造函数。

@Ela:但是我的line类有两个Point对象,start和end,它们都有y和x,我如何将它们传递到起点和终点,与ctor:base(…)@rNuɹɐ,因为通常直线没有X和Y,如果您确实希望继承点的属性,我不能告诉你背后应该有什么逻辑it@Ela:直线没有X和Y,它有两个点,起点和终点,每个点在图中都有X和Y,所以我编写了点类,以便在直线中使用它class@rNu若直线不应该有X和Y,为什么要从点继承?继承意味着直线将获得点的属性<代码>类行:点
是继承…@Ela这是合乎逻辑的答案,你是对的,不需要继承,谢谢
public Line(Point start, Point end)
   : base (...)
{
}