20165233 實驗一 Java開發環境的熟悉

20165233 實驗一 Java開發環境的熟悉

實驗要求

1.沒有Linux基礎的同窗建議先學習《Linux基礎入門(新版)》《Vim編輯器》 課程;java

2.完成實驗、撰寫實驗報告,實驗報告模板見QQ羣,注意實驗報告重點是運行結果,遇到的問題(工具查找,安裝,使用,程序的編輯,調試,運行等)、解決辦法(空洞的方法如「查網絡」、「問同窗」、「看書」等一概得0分)以及分析(從中能夠獲得什麼啓示,有什麼收穫,教訓等);vim

3.實驗報告中統計本身的PSP(Personal Software Process)時間:網絡

步驟 耗時 百分比
需求分析 5min 8.3%
設計 15min 25%
代碼實現 30min 50%
測試 5min 8.3%
分析總結 5min 8.3%

4.嚴禁抄襲。編輯器

實驗內容:

1.使用JDK編譯、運行簡單的Java程序;
2.使用IDEA 編輯、編譯、運行、調試Java程序。ide

實驗步驟

實驗一 Java開發環境的熟悉-1

  • 創建有本身學號的實驗目錄。
  • 經過vim Hello.java編輯代碼。
  • 編譯、運行Hello.java代碼。

實驗一 Java開發環境的熟悉-2

  • 新建HelloJDB類
  • 單步調試、設置斷點

① Step Over:程序向下執行一行(若是當前行有方法調用,這個方法將被執行完畢返回,而後到下一行)工具

② Step Into:程序向下執行一行。若是該行有自定義方法,則運行進入自定義方法(不會進入官方類庫的方法)學習

③ Force Step Into:進入任何方法測試

④ Step Out:若是在調試的時候進入了一個方法,並以爲該方法沒有問題,就可使用stepout跳出該方法,返回到該方法被調用處的下一行語句。值得注意的是,該方法已執行完畢。idea

⑤ Run to Cursor:將程序運行到光標處。命令行

  • 設置條件斷點

實驗一 Java開發環境的熟悉-3

練習題目:實現求兩個數的最大公約數和最小公倍數的功能,數從命令行輸入,並進行測試(正常狀況,異常狀況,邊界狀況)。

經過命令行實現

  • 正常狀況

  • 邊界狀況

下邊界

上邊界

  • 異常狀況

經過IDEA實現

  • 正常狀況

  • 邊界狀況

  • 異常狀況

  • 斷點調試

實驗中遇到的問題

  • 我在經過命令行運行與IDEA運行獲得不同「異常狀況」運行的結果。例如:我輸入-61與-8,因爲我在程序裏設計了「若是輸入值小於0就將最大公因子與最小公倍數的值返回-1」,因此在IDEA中,就會獲得(-61,-8)=-1,[-61,-8]=-1的結果;而在終端裏就會返回以下圖的結果:

  • 解決辦法:在程序運行後出現Exception in thread "main" java.lang.StackOverflowError的報錯,是java棧的內存溢出的結果。此內存溢出說明,java棧的設置過小,咱們能夠藉助-Xss這個參數模擬一下此異常,-Xss是用來設置棧的大小。

  • 分析:這是第一次遇到此類問題,但利用-Xss是來設置棧的大小,是要依據電腦來進行修改,有可能會更改出更大的bug,因此儘可能利用IDEA來進行運行,對於程序的包容性也要更加註意,思考編寫出更加全面的程序。

相關文章
相關標籤/搜索