2010年9月7日 星期二

java學習心得

逃避了很久,沒想到最後還是要面臨java,只好開始學囉,一開始就碰上很多挫折。

首先下載JDK,到了sun網站,怎麼找不到,原來後來被改成java SE

我下載的版本是jdk-6u21

1. 執行java testframe,出現


解壓縮後,我的電腦按右鍵選內容,進階/環境變數/系統變數/新增或修改Path,

方法1: 在最後加上 「C:\Java\jdk1.6.0_21\bin\;」

方法2:先定義JAVA_HOME為「C:\Java\jdk1.6.0_21」再到path新增「;%JAVA_HOME%\bin;」意思相同



當出現以下錯誤時應該是classpath變數還沒設


可以用 echo %classpath%來觀看目前的設定

我的電腦按右鍵選內容,進階/環境變數/系統變數/新增或修改classpath, 「.;C:\Java\jdk1.6.0_21\lib;」或者用方法2的「.;%JAVA_HOME%\lib;」

或其他jar檔案,設定好後cmd需關閉重新開啟才能套用。



2. 一開始程式寫好,javac testframe.java,然後理所當然用java testframe.class 怎麼有錯誤,原來執行class不需打附檔名,不親自動手還不容易遇到。



3.程式寫好,javac testframe.java,第二個步驟當然是 java testframe,怎麼出現錯誤,原來 java 分大小寫,確切的檔名是 java TestFrame,夠吐血了吧!



4. 開始認真寫程式了,怎麼 string myname; 怎麼不行,原來正確是 String myname; 字串的宣告s要大寫S。



5. 每一行程式結束用分號;

6. 類名要跟檔案名一致。

7. 字串也是跟VB一樣用雙引號"".

8. package:英文全部使用小寫,例如:com.xx、java.lang....。





  • 變數首字小寫代表型別, iAgeOfStudent, strInput
  • 方法應該為動詞或動詞加名詞首字小寫,sendMessage, setSize, setLocation
  • 類別及介面名稱命名首字大寫應該用名詞。介面名稱應用形容詞。
  • 混和第一個字母小寫和內部單字的第一個字母大寫的狀況。但用駝峰命名方法。宣告類別常數的變數名稱以及ANSI 常數的變數名稱應該是以("_") 底線分隔的全大寫字。(為了易於除錯,應該避免 ANSI常數。)

    9. 開始執行,以下畫面原來是少打了附檔名,正確應該是 javac BookBuyerAgent13.java

    10. 正確編譯後,還是有錯,這時會顯示出程式內的錯誤。

    以下的錯誤是沒有 import jade.core.behaviours.*;


    11. 以下錯誤是少了內部類,  private class RequestPerformer extends Behaviour {    }



    12. 類別名稱需與檔名相同,如下圖就是不相同,所以javac會有錯誤


    13. 老問題總是發生,以下畫面還是代表附檔名忘了加。






    14. 有一個錯誤卡了好幾個禮拜,錯誤畫面如下:


    下午靈光一現,想說既然package搞不定,乾脆把BookSellerAgent.java及BookSellerGui.java的package通通加註解試看看,果然一次就成功,讓我高興的差點大聲呼喊Ya!














    沒有留言:

    張貼留言