在这里为新手编程,我已经为此花了好几个小时的时间。
我可以创建一个坐标对象,但是接下来我想创建一个点对象,该点对象可以访问Coordinate对象中的坐标字段。如何将这两个类“链接”在一起?您对优质的YouTube视频有什么建议,可以解释我在这里缺少的内容吗?谢谢!
class Coordinate
{
public int X { get; private set; } = 0;
public int Y { get; private set; } = 0;
public Coordinate(int x, int y)
{
x = X;
y = Y;
}
}
class Dot
{
public string color { get; set; }
public Dot(string color, Dot dot)
{
this.Color = color;
}
}
class Program
{
static void Main(string[] args)
{
Coordinate coor1 = new Coordinate(2, 3);
Dot dot1 = new Dot("Blue", coor1);
}
答案 0 :(得分:1)
这里是您正在寻找“链接”您的课程的内容。在面向对象的编程中,这称为composition。
这样,您可以在Dot类中使用Coordinate-instance的功能和数据。
class Coordinate
{
public int X { get; private set; }
public int Y { get; private set; }
public Coordinate(int x, int y)
{
X = x;
Y = y;
}
}
class Dot
{
public Coordinate coord { get; private set; }
public string color { get; set; }
public Dot(string color, Coordinate coord)
{
this.color = color;
this.coord = coord;
}
}
class Program
{
static void Main(string[] args)
{
Coordinate coor1 = new Coordinate(2, 3);
Dot dot1 = new Dot("Blue", coor1);
Console.WriteLine(dot1.coord.X);
}
}
注意:我还修复了坐标构造器中可能出现的错字(设置X = x和Y = y ..)