這節教程將討論一些在學習JAVA語言過程中可能遇到的共同問題。
問題一:編譯器找不到類。
解決方法:
確保你已經導入了類或者它的包。
如果對CLASSPATH環境變量有進行設置,要重新復位。
確保類名的拼寫跟定義的一樣,要注意大小寫問題。
如果類在包中,要確保它們處在正確的子目錄中。
同時,一些程序員從.java文件名字為類使用不同的名字。要確保你是使用類名字而不是文件名。實際上,使類名和文件名相同就不會出現這個錯誤了。
問題二:注釋器不能找到其中一個類
解決方法:
確保你指定的是類名而不是類的文件名。
如果對CLASSPATH環境變量有進行設置,要重新復位。
如果類在包中,要確保它們處在正確的子目錄中。
確保你從.class文件所在的目錄中調用這個注釋器。
問題三:程序不能工作?究竟出了什麼錯誤?
以下是JAVA新手犯的公共錯誤,注意以下的各條:
你是否忘記在在switch語句中的每一個case語句使用break?
你是否在應該使用比較運算符號==的時候使用了賦值運算符=?
在循環語句中的終止條件是否正確?確保你沒有過早或者過遲終止循環。也就是說,確保正確使用< 或<=或 >或 >= a運算符。
記住數組的索引是從0開始的,因此數組的循環應該是:
for (int i = 0; i < array.length; i++)
. . .
你是否在比較浮點型數使用了==?大於號和小於號(>和<)運算符在對浮點數的條件邏輯中更合適。
你是否對封裝、繼承或者其它面向對象編程和設計概念理解有問題?
確保語句塊圈在大括號{和}中間。下面的代碼塊看起來好象是對的,因為它采用縮進的編寫,但是你仔細看這裡缺少了{ }:
for (int i = 0; i < arrayOfInts.length; i++)
arrayOfInts[i] = i;
System.out.println("[i] = " + arrayOfInts[i]);
你是否正確使用條件運算符號?要確保理解&& 和 ||以及正確使用它們。
你是否使用了否定運算符(!)?盡量不要使用它。這樣會減少錯誤的發生。
你是否使用了do-while語句。如果有,你知道do-while語句至少執行一次嗎?它跟while循環語句不一樣的,它可以連一次都不執行。
你是否想從方法中改變參數的數值?在JAVA中的參數是由參數來傳遞的,它不能在方法中改變。
你是否無意地增加一個分號(;)來過早終止語句?比如:
for (int i = 0; i < arrayOfInts.length; i++) ;
arrayOfInts[i] = i