我正在关注C#编程指南(C#Players Guide 2nd Edition),并坚持理解课程(第131页)。
练习声明我应该构造一个 Ball 类,它应该具有大小/半径以及颜色实例变量。现在我已经创建了一个Color类(它有两个构造函数,其中一个接受四个ushort,一个接受三个ushort类型),但是我希望使用我刚创建的Color类型。
我不知道该怎么做!到目前为止,我有:
private int size;
private int radius;
private int throwCount;
private Colour colour;
public Ball(int size, int radius, Colour colour)
{
this.size = size;
this.radius = radius;
this.colour = colour;
}
如果我创建一个球,我不知道如何正确使用颜色参数。
Ball myBall = new Ball(1,2, ?)
请你们帮帮我,告诉我,我这样做是否合适?
提前感谢纯新手!
答案 0 :(得分:4)
首先创建一个新的Colour
对象,然后将其传递给Ball
构造函数方法:
var colour = new Colour( ... ); // provide suitable parameters
Ball myBall = new Ball(1, 2, colour);
或者您甚至可以在一行代码中执行此操作:
Ball myBall = new Ball(1, 2, new Colour( ... )); // provide suitable parameters
答案 1 :(得分:3)
这里至少有两个选择:
他们要求你在实例化颜色时实例化球:
Ball myBall = new Ball(1,2, new Colour(1,2,3));
他们要么你想要在球之前实例化它并在之后重复使用,这样你就可以为不同的球使用相同的Color实例:
Colour myColor = new Colour(1,2,3)
Ball myBall = new Ball(1,2, myColor );
Ball myOtherBall = new Ball(4,2, myColor );