我不明白为什么编译器不断抱怨我的代码如下:Java内部类访问问题
operator1.push();这个调用似乎是合法的runStack类
是否有任何与Java中的静态内部类有关的限制,我应该知道的?
我不明白为什么编译器不断抱怨我的代码如下:Java内部类访问问题
operator1.push();这个调用似乎是合法的runStack类
是否有任何与Java中的静态内部类有关的限制,我应该知道的?
您需要提供参数operator1.push()和operator1.pop()
简单地说:你push()
和pop()
方法声明为参数,但你没有向他们提供。只是从方法声明中删除参数使得您的代码编译 - 但它仍然是可怕的代码。
我会忘记穿的那一刻,并专注于重组代码:
决定你准备再次尝试这个线程代码(在你确定了解什么是静态方法等之后),你应该重新从头开始 - 它会比试图拉动工作更快代码出来,我害怕。
是的....我同意。我有肮脏的代码.....只是试图去这里快速和肮脏,所以我可以完成我的disgn计划....只需要确认一些功能。 – user852415 2012-02-02 18:09:46
@ user852415:很高兴看到你已经删除了“菜鸟”的侮辱。我希望你已经知道编写“快速和肮脏”的代码几乎是不值得的。只要将这些类分开,给他们一个更好的名字,让你的IDE缩进代码等等,会让你的代码更容易理解 - 所以你可能已经能够自己修复它了。 – 2012-02-02 18:25:47
当我尝试编译我收到以下错误
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
这似乎很清楚
正确的....只是运行代码给你的错误...我不能相信我错过了那一个。谢谢! – user852415 2012-02-02 18:02:34
你应该已经发布了编译器的投诉 – 2012-02-02 17:35:54
,也应该遵循Java的命名约定,并重新格式化您的代码,以理智。 – 2012-02-02 17:36:42
您没有显示您收到的错误消息。 – 2012-02-02 17:37:19