我无法弄清楚为什么编译器会在下面抱怨我的代码:
operator1.push();这个调用似乎来自runStack类
我是否应该注意与Java中的静态内部类相关的任何限制?
答案 0 :(得分:4)
简单地说:您的push()
和pop()
方法被声明为具有参数,但您并未提供参数。只是从方法声明中删除参数会使您的代码编译 - 但它仍然是可怕的代码。
我暂时忘记了线程,并专注于重新组织代码:
当你做决定你准备好再次尝试这个线程代码时(在你确定了解静态意味着什么之后),你应该从头开始 - 它比试图将工作代码从混乱中拉出来更快,我很害怕。
答案 1 :(得分:1)
您需要为运算符1.push()和运算符1.pop()提供参数
答案 2 :(得分:0)
当我尝试编译时,我收到以下错误
myStack.java:129: error: method push in class pushPop cannot be applied to given types;
operator1.push();
^
required: pushPop
found: no arguments
reason: actual and formal argument lists differ in length
这似乎很清楚