1

我正在尝试在 Netbeans 中编译这个程序:Lab1.java

我得到这个错误......

BF.java:27:非静态变量 this 不能从静态上下文中引用 return new Program(new BF().doParse(str));

我什么都试过了!

4

3 回答 3

2

您的 Program 内部类未声明为静态的。这意味着 Program 实例只能存在于外部 BF 类的封闭实例中。如果您希望 Program 类独立存在,以便您可以编写new BF.Program(),则必须声明它static

在您的程序中,您在静态上下文中的 main 方法中创建了一个新的 Program 实例,而没有封闭的 BF 实例,这是非法的。只需将静态添加到程序类声明中。

于 2011-05-30T03:30:17.363 回答
1

将第 171 行从:

class Program implements Node

对此:

static class Program implements Node
于 2011-05-30T03:32:15.223 回答
0

不能从静态上下文中引用非静态变量

于 2011-05-30T03:29:18.123 回答