修复了记事本中的tictactoe错误



嗨,我在做作业,我正在做一个井字游戏。我根据老师的指示使用记事本,我在一个记事本上做了两节课,一节TicTacToe名称的主课或第二个游戏板。netbeans中的一切都很好,但当我在notepad中实现并通过cmd执行时,就会出现错误

TicTacToe.java:16:错误:类GameBoard是公共的,应该在名为GameBoard.java的文件中声明`

`

public class GameBoard {
private char[][] gameBoard; 
 public GameBoard() 
{ gameBoard= new char[3][3];
 for(int row=0; row<gameBoard.length; row++)
 {
java.util.Arrays.fill(gameBoard[row], ' ' );
}
    }
      public void displayBoard()
    {
for(int row=0; row<gameBoard.length; row++)
 {
for(int col=0; col<gameBoard.length ; col++)
{
System.out.print("t" + gameBoard[row][col]);
 if(col==0 || col==1)
System.out.print("|");
  }
 System.out.print("n---------------------------n");
 }
  }
  }

这是我的代码

在一个Java文件中只能有一个public类,并且Java文件的名称必须与其中public类的名称相匹配

选项1-将GameBoard类拉入一个新文件,并将文件命名为GameBoard.java。这意味着您还需要更改文件的扩展名。除非要添加import语句,否则请确保这些文件位于同一文件夹中。

选项2-删除GameBoard类的修饰符(public((默认为包专用(

选项3-将GameBoard类嵌套在TicTacToe类中(如果需要,您仍然可以更改/删除修饰符;通常不建议使用public嵌套类(

不能在一个文件中声明两个公共类(除非它们是嵌套的(。现在,您已经在同一个.java文件中定义了TicTacToeGameBoard

阅读本教程关于类声明

每个文件只允许有一个公共类(TicTacToe.java(,所以你需要重命名它。你可以制作另一个不带访问修饰符的类:

public class TicTacToe {
    public static void main(String[] args) {
        GameBoard board=new GameBoard();
        board.displayBoard();
    }
}
class GameBoard {
    private char[][] gameBoard;
    public GameBoard() {
        gameBoard = new char[3][3];
        for (int row = 0; row < gameBoard.length; row++) {
            java.util.Arrays.fill(gameBoard[row], ' ');
        }
    }
    public void displayBoard() {
        for (int row = 0; row < gameBoard.length; row++) {
            for (int col = 0; col < gameBoard.length; col++) {
                System.out.print("t" + gameBoard[row][col]);
                if (col == 0 || col == 1)
                    System.out.print("|");
            }
            System.out.print("n---------------------------n");
        }
    }
}

相关内容

  • 没有找到相关文章

最新更新