Java 尝试将实例变量初始化为具有直径和颜色的形状实例
我已经编写了一个类StickFigure,它是熟悉的“StickPerson”的简化表示。为了在图形显示中显示棒状图形,我将其简化为基本要素,并将其构建为圆形、三角形和矩形 StickFigure有一个xPos和一个yPos,这也是仅有的两个实例变量 到目前为止,我已经声明了另外三个实例变量head、body和leg,它们将引用Circle、Triangle和Rectangle的实例。我想我做对了Java 尝试将实例变量初始化为具有直径和颜色的形状实例,java,bluej,Java,Bluej,我已经编写了一个类StickFigure,它是熟悉的“StickPerson”的简化表示。为了在图形显示中显示棒状图形,我将其简化为基本要素,并将其构建为圆形、三角形和矩形 StickFigure有一个xPos和一个yPos,这也是仅有的两个实例变量 到目前为止,我已经声明了另外三个实例变量head、body和leg,它们将引用Circle、Triangle和Rectangle的实例。我想我做对了 Circle aHead = new Circle(); Triangle aBody = new
Circle aHead = new Circle();
Triangle aBody = new Triangle();
Rectangle aLeg = new Rectangle();
我现在正在尝试创建StickFigure的构造函数,以便它将头部初始化为直径为30、颜色为color.PINK的圆形实例。我不知道该怎么做!以下是我迄今为止所做的工作
public StickFigure()
{
super();
this.setXPos(25);
this.setYPos(220);
}
到目前为止,整个代码:
`public class StickFigure { /*Instance variables*/
private int xPos//粘贴图形的水平位置
private intypos//粘贴图形的垂直位置
//我的声明
前方圆圈=新圆圈();
三角形aBody=新三角形();
矩形aLeg=新矩形();
/**
*StickFigure类对象的构造函数
*在图形显示的左下角附近提供默认的棍状图形。
*
*/
public StickFigure()
{
super();
这个.setXPos(25);
this.setYPos(220;
{这是一个可能的、非常基本的解决方案:
enum Colour {
BLACK,
WHITE
}
class BodyPart {
Colour colour;
public BodyPart() {}
public BodyPart(Colour colour) {
this.colour = colour;
}
}
class Circle extends BodyPart {
private int diameter;
public Circle(Colour colour, int diameter) {
super(colour);
this.diameter = diameter;
}
//getter and setter
}
class Triangle extends BodyPart {
//whatever you want here
}
class Rectangle extends BodyPart {
//whatever you want here
}
class StickFigure {
private Circle head;
private Triangle body;
private Rectangle leg; // it could be a list of legs :D
public StickFigure(Circle head, Triangle body, Rectangle leg) {
super();
this.head = head;
this.body = body;
this.leg = leg;
}
public static void main(String[] args) {
StickFigure sf = new StickFigure(new Circle(Colour.BLACK, 10), new Triangle(), new Rectangle());
}
}
圆圈
和三角形
类来自哪里?哪个软件包?我用这些形状创建了棒状图形,现在我正在编写一个程序,这些就是类。Blue JI认为你的目标是将构成棒状图形的三个形状作为实例变量,因为它们最终与你的然后,你只需在构造函数中使用所需的参数初始化所有三个形状。你可能想看看面向对象编程中合成和聚合之间的区别。我理解。但你如何操作这些形状将取决于你实际使用的圆圈
类。Java没有有一个Circle
类,所以如果你没有编写它,那么它一定来自其他地方什么都没有。如果你告诉我们它属于哪个包,那应该可以清楚地确定你正在使用什么,并允许我们帮助你。你的棍子图形由头、身体和腿组成,因此它应该包含每个部分的实例变量。在Circle类中,你可以添加一个颜色枚举变量,以便你可以设置它s相应的颜色(在本例中,每个部分都有不同的颜色),或者如果您只需要一种颜色,则直接将其添加到粘性图形中。您好,开发人员,我已经添加了完整的代码。到目前为止,我所做的是什么