【发布时间】:2011-07-24 23:46:06
【问题描述】:
这个错误是什么意思,为什么会出现?在似乎与我的情况相关的情况下,我无法通过 Google 找到有关成员类和静态上下文或它们的含义的太多信息。
这是我得到的错误:
non-static variable this cannot be referenced from a static context
它指向这条线,并且在new 运算符处:
throw new ParenthesisException();
ParenthesisException 是主类的私有成员类。我认为问题可能与此有关,但我能想到的就这些了。
这是我对 ParenthesisException 的定义。它在主类定义中:(如果格式不是很好,我很抱歉)
private class ParenthesisException extends Throwable
{
public ParenthesisException(){}
public String strErrMsg()
{
return "ERROR: Every '(' needs a matching ')'";
}
}
我发现错误消息相当神秘。我希望能简要解释一下“静态上下文”以及为什么 new 运算符不适用于我的成员类,以及如何抛出私有成员类的实例。
【问题讨论】:
-
你需要把错误的代码贴出来。私人课程似乎不是问题。
标签: java exception static inner-classes