我不明白错误评论试图告诉我的内容

时间:2014-08-05 10:01:46

标签: java class object extends

我有一个名为Circle的类和另一个名为POINT的类,因此Circle由半径和点(这是圆的中心点)组成。我正在尝试构建一个构造函数,我遇到了错误信息我无法弄清楚这个问题。

(Class Circle,它的开头)

public class Circle extends Shape {
    private int radius, x, y;

    Point point = new Point(0,0);

    public Circle(radius,x, y){
        this(5, 3, 6);
    }

分类点:

    public class Point {
    private int xPos,yPos;
    public Point(int x, int y){
        setxPos(x);
        setyPos(y);
    }
    public int getxPos() {
        return xPos;
    }
    public void setxPos(int xPos) {
        this.xPos = xPos;
    }
    public int getyPos() {
        return yPos;
    }
    public void setyPos(int yPos) {
        this.yPos = yPos;
    }
    ...

2 个答案:

答案 0 :(得分:1)

更改

     public Circle(radius,x, y){
       this(5, 3, 6);
   }

  public Circle(int radius,int x, int y){  //need to add types to parameters
              this.radius=radius;
              this.x=x;
              this.y=y;
   }

或者如果您打算使用5,3,6作为常数值添加

  public Circle(){ 
              this.radius=5;
              this.x=3;
              this.y=6;
   }

答案 1 :(得分:1)

你的构造函数是recursive,尽管你的声明是错误的,正如其他答案所建议的那样我建议你改变声明,再考虑一下你可能想要在构造函数中初始化radius,x and y的代码,你可能想要声明一些方法对初始化值进行操作。

 public Circle(int radius,int x, int y){
  //Remove this from the constructor and perform initialization
  this.radius=radius;
  this.x=x;
  this.y=y
 }