java實驗1實驗報告(20135232王玥)

來源:互聯網
上載者:User

標籤:

實驗一 Java開發環境的熟悉

一、實驗內容

1. 使用JDK編譯、運行簡單的Java程式

2.使用Eclipse 編輯、編譯、運行、調試Java程式

二、實驗要求

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

2.完成實驗、撰寫實驗報告,實驗報告模板見QQ群,注意實驗報告重點是運行結果,遇到的問題(工具尋找,安裝,使用,程式的編輯,調試,運行等)、解決辦法(空洞的方法如“查網路”、“問同學”、“看書”等一律得0分)以及分析(從中可以得到什麼啟示,有什麼收穫,教訓等)。

3.實驗報告中統計自己的PSP(Personal Software Process)時間

步驟

耗時

百分比

需求分析

  40min 20%

設計

   40min 20% 

代碼實現

   60min 30%

測試

    30min 15%

分析總結

    30min  15%

4. 嚴禁抄襲。

 

三、實驗步驟

(一)命令列下Java程式開發

1.首先雙擊案頭上的Xface終端表徵圖。

2.開啟終端(類似Windows下的cmd),之後會自動運行shell程式。

3.輸入cd Code命令進入Code(注意C要大寫)目錄。

4.輸入mkdir 20135100 命令建立實驗目錄,注意目錄名一定是自己的學號(學號要體現在實驗報告中),可以使用ls命令或dir命令查看建立的目錄情況。

5.輸入cd 20135100命令進入實驗目錄,再輸入類似mkdir exp1建立第一個實驗目錄,然後輸入cd exp1進入實驗一目錄,可以輸入pwd命令查看當前工作路徑。

6.輸入gedit Hello.java(注意把代碼儲存到exp1目錄中)或vim Hello.java 編輯Hello.java。

7.輸入javac -d . Hello.java命令編譯代碼,輸入java ljp.Hello命令運行 程式。

(二)Eclipse下Java程式開發、調試

1.在命令列中輸入eclipse命令並斷行符號或單擊案頭上的Eclipse EE表徵圖開啟Eclipse。

2.在Eclipse中單擊File->New-> Java Project建立Java項目。

3.輸入項目名稱HelloJDB(你可以自己起名),並單擊Finish按鈕完成建立項目。

4.在Eclipse中單擊File->New->Class建立Java類。

5.根據Java代碼規範輸入包名ljp(小寫,可以自訂),類名HelloJDB(單字首大寫),並勾選上自動產生main函數選項,最後單擊Finish按鈕。

6.輸入如下代碼:package ljp;

 public class HelloJDB

{

public static void main(String[] args)

{

 int i = 5;

 int j = 6;

int sum = add(i, j);

 System.out.println(sum); 

sum = 0;

 for(i=0; i< 100; i++)

 sum += i

 System.out.println(sum);

 } 

 public static int add(int augend, int addend)

{

 int sum = augend + addend;

 return sum;

 }

}

7.單擊運行按鈕(或使用Ctrl+F11快速鍵),就可以在控制台(Console)中看到運行結果。

8.練習偵錯工具,首先我們通過單擊Window->Open Perspective->Debug開啟調試視圖。

9.偵錯工具首先要會設定斷點單步運行

10.逐步執行效率比較慢,如果我們感覺到第6行到第10行的代碼沒有問題了,想讓程式直接運行到第11行,怎麼辦?首先我們要在第11行設定斷點,然後單擊Resume表徵圖(快速鍵F8)。

11.逐步執行效率比較慢還導致另外一個問題,比如一個大迴圈中間出了問題怎麼辦?這時可以通過條件斷點解決問題。調試迴圈代碼時,會有一個值我們特別關注,這時在Variable標籤中查看變數的值,比如我們此時比較關注sum,每次逐步執行都可以看到sum的變化情況了,

設定條件斷點,我們在第11行左邊單擊滑鼠右鍵,選擇Breakpoint Properties...

(三)練習(通過命令列Eclipse兩種方式實現,在Eclipse下練習偵錯工具)

題目:實現Fibonacci數列功能,並進行測試。

四、練習題代碼和:

import java.util.Scanner;

/*
Fibonacci

*/
public class Fibonacci {

public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Please input this fibonacci n:");
int n = scanner.nextInt();

System.out.println(fibonacci(6) + ":" + fibonacciNormal(6));

int sum = 0;
for(int i = 1; i <= n; i++){
sum += fibonacci(i);
}
System.out.println(sum);
}


public static int fibonacci(int n){
if(n <= 2){
return 1;
}else{
return fibonacci(n-1) + fibonacci(n-2);
}
}


public static int fibonacciNormal(int n){
if(n <= 2){
return 1;
}
int n1 = 1, n2 = 1, sn = 0;
for(int i = 0; i < n - 2; i ++){
sn = n1 + n2;
n1 = n2;
n2 = sn;
}
return sn;
}
}

實驗內容1:

實驗內容2:

 

五、遇到的問題與解決方案

遇到問題: 

一開始想使用遞推的方法來編寫代碼,實現Fibonacci數列的功能,但是由於程式編寫方面思路不清,因此編譯失敗了,經多次修改無果。

解決方案:

後來想到能否使用遞迴的方法來編寫代碼,改為了用遞迴的方法編寫代碼,最後多次修改後成功。

 

 

六、實驗收穫

通過這次實驗我學會了使用Eclipse來運行java程式的方法以及如何偵錯工具,但是偵錯工具的流程大致明白但是不懂具體怎麼操作,具體從哪裡可以設定斷點還是有些不明白。總體上說這次實驗還是比較成功的,運用了C語言的Fibonacci的知識點來編寫了java程式的代碼,比較簡單。就是有些遺忘了Fibonacci的定義,後經查閱資料瞭解了。在編寫代碼方面還是有些問題,比如程式的設計較為混亂,沒有一個比較清晰的思路。今後還需改正。

 

 

 

 

java實驗1實驗報告(20135232王玥)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.