问题描述
我正在开发一款非常基础的游戏。完全是文字。这听起来很简单,但是当我声明确认玩家用户名的函数时,我看到了这个错误消息。 Error message '语法错误,插入“;”完成 LocalVariableDeclarationStatement' 代码如下:
static void confirmation(); {
如您所见,它有一个分号,那么为什么会出现一条错误消息告诉我添加一个分号? 我还注意到它提到了一个“LocalVariableDeclarationStatement”,我没有在我的代码中提到任何地方。
注意:我实际上并不知道“LocalVariableDeclarationStatement”的作用,所以它可能很有意义。
解决方法
编译器认为你要声明一个局部变量;为此,您需要提前插入分号,如下所示:
static void confirmation;
但是,您不能声明 void
类型的变量,因此这也没有意义。如果您使用 int
而不是 void
,它会更有意义。
但看起来您实际上是想声明一个方法,而不是一个局部变量。在这种情况下,您需要完全删除分号:
static void confirmation() {
// method body
}
,
我觉得奇怪的是 eclipse 建议添加一个分号,实际上它应该说(或建议您)添加一个正文
就实际问题而言,正如已经指出的那样,您不能有一个用于开始的 void 变量。其次,当在修饰符中声明一个方法(可以是 void)时,参数列表的末尾不应该有分号,因为它是无效的语法。