gpt4 book ai didi

java - 单点对象和数组的解决方法

转载 作者:太空宇宙 更新时间:2023-11-04 14:59:58 27 4
gpt4 key购买 nike

我在一项作业上遇到了问题,我们必须创建自己的点类(我已经完成了),然后我用它来创建 3 个形状类:三角形、矩形和圆形。然后,我们必须使这些类中的每一个都成为 Shape 类的扩展,但我在其中一个部分上遇到了麻烦。

我有一个由 3 个预定点对象组成的数组,用于制作三角形的点。但 Shape 类适用于单个点对象而不是数组。使 Shape 接受单个点对象和点对象数组的一个好的解决方法是什么?

这是三角形类

import java.awt.Color;
import static java.lang.Math.sqrt;

/**
*
* @author Henry
*/
public class Triangle extends Shape {

private int sides = 3;
private Point[] points; //Error line here

public Triangle(Point[] vertices) {
super(3, vertices, Color.red);
points = vertices;
}

这是形状类

public class Shape {
private int sides;
private Color colour;
private Point coordinates;

public Shape (int sides, Point p, Color c) {
this.sides=sides;
colour = c;
coordinates = p;
}

所有方法都可以工作,只是三角形中的一行代码不起作用。任何帮助,将不胜感激。

最佳答案

这应该有效。最好不要在每个不同的位置调用变量(p、坐标、顶点...)

public class Shape {
protected int sides;
private Color color;
protected Point[] coordinates;

public Shape (int sides, Color color, Point... coordinates) {
this.sides=sides;
this.color = c;
this.coordinates = coordinates;
}
}


public class Triangle extends Shape {

public Triangle(Point[] coordinates) {
super(3, Color.red, coordinates);
}
}

关于java - 单点对象和数组的解决方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22701653/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com