我不太确定如何表达这个问题,所以就到这里了。一堂课,我有这个:

public class Board {
//instance variables

private char BLANK = '_';
private char[][] board;

public Board(){
    int SIZE = 9;
    char[][] board = new char [3][3];
    for (int i=0; i<board.length; i++){
        for (int j=0; j<board[i].length; j++){
            board[i][j] = BLANK;
        }
    }
}
}


在另一个(省略“ class”标签)中:

public int getComputerSpot(){
    int nbr = r.nextInt(Board.SIZE)+1;
    while (!board.isAvailable(nbr)){
        nbr = r.nextInt(Board.SIZE)+1;
    }

    return nbr;
}


它找不到Board.SIZE;它说找不到变量。缺少什么,或者如何确保它可以找到Board.SIZE?谢谢!

最佳答案

SIZE变量将仅存在于Board构造函数中,当构造函数完成时它将不再存在,并且只能在声明它之后从构造函数行访问它。

因此,您需要将SIZE声明为类的属性,而不是局部变量。

关于java - 如何从对象中调用变量?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27158755/

10-12 06:23