我不明白爲什麼編譯器不斷抱怨我的代碼如下: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