需要Java帮助

时间:2013-02-23 22:18:44

标签: java

我遇到了java的问题,我需要帮助。

假设存在一个接口,GUIComponent具有以下方法: - open和close:没有参数,返回boolean - move和resize:接受两个整数参数并返回void  定义一个实现GUIComponent接口的类Window,并具有以下成员: - width,height,xPos和yPos整数实例变量,xPos和yPos初始化为0 - 一个接受两个整数变量的构造函数(width后跟height)使用ti初始化width和height实例变量 - open的实现:将“Window opens”发送到System.out,并返回true - close的实现,将“Window closed”发送到System.out,并且返回true - 调整宽度和高度变量以反映指定大小的resize实现 - 修改xPos和yPos以反映新位置的move的实现

这是我输入的代码。

public class Window implements GUIComponent{
    private int width;
    private int height;
    private int xPos = 0;
    private int yPos = 0;
    public Window(int width, int height){
        this.width = width;
        this.height = height;
    }
    public boolean open(){
        System.out.println("Window opened");
        return true;
    }
    public boolean close(){
        System.out.println("Window closed");
        return true;
    }
    public void resize(int width, int height){
        this.width = x;
        this.height = y;
    }
    public int move(int xPos, int yPos){
        xPos = 1;
        yPos = 1;
    }
}

我收到错误,我不知道该怎么做。

由于

2 个答案:

答案 0 :(得分:1)

这是一个问题 - 看看这个方法

public int move(int xPos, int yPos) {
   xPos = 1;
   yPos = 1;
}

它没有返回值。方法名称move表明它是一个操作方法,应该声明为void

答案 1 :(得分:0)

除了@ Reimeus的建议外,还有一些我看到的内容:

更改

public void resize(int width, int height){
    this.width = x; // What is x???
    this.height = y;  // What is y???
}

public void resize(int width, int height){
    this.width = width;
    this.height = height;
}

同时更改

public int move(int xPos, int yPos){
    xPos = 1; // You should change the class variable. use  this
    yPos = 1; // and I thing you want the value to be passed by the method 
}

public void move(int xPos, int yPos){
    this.xPos = xPos;
    this.yPos = yPos;
}