《Java語言程序設(shè)計》——軟件實驗指導(dǎo)書_第1頁
《Java語言程序設(shè)計》——軟件實驗指導(dǎo)書_第2頁
《Java語言程序設(shè)計》——軟件實驗指導(dǎo)書_第3頁
《Java語言程序設(shè)計》——軟件實驗指導(dǎo)書_第4頁
《Java語言程序設(shè)計》——軟件實驗指導(dǎo)書_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

付費下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、Java程序設(shè)計實驗指導(dǎo)書太原理工大學(xué)計算機科學(xué)與技術(shù)學(xué)院(軟件學(xué)院) 目 錄實驗1 Java語言基礎(chǔ)3實驗2 數(shù)組和字符串編程4實驗3 Java面向?qū)ο蟪绦蛟O(shè)計5實驗4 Java異常處理7實驗5 多線程編程9實驗6 圖形用戶界面編程11實驗7 輸入與輸出14實驗8 網(wǎng)絡(luò)編程15實驗9 數(shù)據(jù)庫編程16實驗1 Java語言基礎(chǔ)1.實驗?zāi)康?1) 通過實驗,掌握J(rèn)ava語言程序設(shè)計的基本方法。(2) 學(xué)會Java語言中標(biāo)示符的命名、運算符和表達(dá)式的應(yīng)用。(3) 熟練地掌握J(rèn)ava程序流程控制語句的應(yīng)用。2.實驗內(nèi)容(1) 編寫應(yīng)用程序,計算100(含100)以內(nèi)所有偶數(shù)的和。(2) “水仙花數(shù)”是

2、指一個3位數(shù),其個位、十位、百位上的數(shù)字的立方和等于該數(shù)本身,例如371=33+73+13,因此371是一個水仙花數(shù)。編寫程序,求所有的水仙花數(shù)。(3) 編寫一個程序,求1-100間的素數(shù)。(4) 有一函數(shù): x (x<1)Y= 3x-2 (1x<10) 4x (x10) 寫一程序,給定x值,輸出y值。(5) 使用for循環(huán)語句,編寫程序輸出以下圖案。(6) 編寫程序,輸出從公元1900年到2100年所有閏年的年號,每輸出5個年號換一行。判斷年是否為閏年的條件是: 若年號可以被4整除,而不能被100整除,則是閏年; 若年號可以被400整除,也是閏年。3.實驗預(yù)習(xí)(1) 復(fù)習(xí)本章所學(xué)

3、內(nèi)容。(2) 寫出實驗內(nèi)容中第(2)、(3)題兩個程序的源代碼,作為預(yù)習(xí)報告。4.實驗步驟及結(jié)果實驗過程中,注意記錄以下內(nèi)容:(1) 實驗過程中實驗步驟及其結(jié)果。(2) 遇到的問題及解決辦法。(3) 實驗體會。實驗2 數(shù)組和字符串編程1.實驗?zāi)康?1) 通過實驗,掌握J(rèn)ava語言中數(shù)組、字符串程序設(shè)計的基本方法。(2) 較熟練地掌握J(rèn)ava程序數(shù)組的應(yīng)用、字符串處理操作的方法應(yīng)用。2.實驗內(nèi)容(1) 編寫一個程序,在控制臺輸入10個數(shù),按大小順序輸出。(2) 求一個3*3矩陣對角元素之和。(3) 輸入一段字符串,統(tǒng)計其中有多少個單詞。(單詞用空格隔開)3.實驗預(yù)習(xí)(1) 將本章所學(xué)內(nèi)容要點進行

4、整理,并認(rèn)真體會例題中的編程要領(lǐng)。(2) 寫出實驗內(nèi)容中第(2)、(3)題兩個程序的源代碼,作為預(yù)習(xí)報告。4.實驗步驟及結(jié)果實驗過程中,注意記錄以下內(nèi)容:(1) 實驗過程中實驗步驟及其結(jié)果。(2) 遇到的問題及解決辦法。(3) 實驗體會。實驗3 Java面向?qū)ο蟪绦蛟O(shè)計1.實驗?zāi)康恼莆認(rèn)ava面向?qū)ο蟪绦蛟O(shè)計中類、繼承、包和接口的概念與應(yīng)用,能熟練應(yīng)用方法、類、成員變量等元素。2.實驗內(nèi)容(1) 創(chuàng)建一個復(fù)數(shù)類complex,以附屬進行數(shù)學(xué)運算、復(fù)數(shù)具有如下格式:RealPart+ImaginaryRart*I ,其中,I為-1的平方根。 要求如下:1 利用浮點變量表示此類的私有數(shù)據(jù)。提供兩個

5、構(gòu)造方法,一個用于此類聲明的對象的初始化;一個為默認(rèn)的無參構(gòu)造方法。2 提供兩復(fù)數(shù)加、減、乘的運算方法。3 按格式(a,b)打印復(fù)數(shù)。其中a為實部,b為虛部。(2) 創(chuàng)建銀行賬號Account類,實現(xiàn)存款(balance)的存(deposit)、取(withdraw)和查詢(getbalance)等功能。(3) 編程定義一個接口,實現(xiàn)三個數(shù)中求最小值和最大值的方法,并將程序存放在mymaths包中。(4) 編程實現(xiàn)以下簡單超市管理,具體要求如下:1 實現(xiàn)描述超市的類Suppermacket類,具有貨架屬性,記錄系統(tǒng)中現(xiàn)有商品,定義盤點商品的函數(shù)check(盤點各類商品的數(shù)量,并輸出盤點結(jié)果),

6、查詢商品的函數(shù)query,并顯示查詢結(jié)果;2 定義商品類Goods,具有商品名稱Name,商品價格Price,商品產(chǎn)地Producer等屬性,操作Sale(銷售商品,余額不足時給予提示)、Add(商品上架操作)和ShowMe(顯示商品信息)。3 main函數(shù),測試以上所要求的各種功能,即可以根據(jù)菜單命令增加、刪除、查詢商品、盤點商品,以及商品銷售和商品上架的操作提示: 超市貨架可以使用商品數(shù)組,數(shù)組大小100表明存放100個商品。 注意實現(xiàn)商品查詢的多態(tài)性,要求可以根據(jù)商品的名稱或產(chǎn)地或價格查詢商品的數(shù)量。3.實驗預(yù)習(xí)要求復(fù)習(xí)本章所學(xué)內(nèi)容,思考以下問題:(1) 什么是對象?什么是類?(2) 面

7、向?qū)ο缶幊痰奶匦杂心娜齻€?它們各自有哪些特性?(3) Java語言在面向?qū)ο缶幊谭矫嬗心男┆毺氐奶攸c?(4) 抽象類與接口有何異同?4.實驗步驟及結(jié)果實驗過程中,注意記錄以下內(nèi)容:(1) 實驗過程中實驗步驟及其結(jié)果。(2) 遇到的問題及解決辦法。(3) 實驗體會。實驗4 Java異常處理1.實驗?zāi)康恼莆债惓5母拍睿约叭绾味x、拋出和捕獲處理異常。2.實驗內(nèi)容(1) 做實驗之前要求思考以下問題,作為預(yù)習(xí)內(nèi)容;1 錯誤和異常有何區(qū)別?查看Java異常類的關(guān)系圖。2 異常是如何拋出、捕獲和處理的?3 Java捕獲和處理異常的結(jié)構(gòu)式怎樣的?4 Try語句如何嵌套?Trow語句有何作用?Finally

8、程序快的作用是什么?(2) 運行下面的程序,理解異常的拋出、捕獲與處理。Import java.io.*;public class void main(String args) public staic void main(String args) for(int i=0;i<4;i+) int k; try switch(i) case 0: /divided by zero int zero=0; k=911 /zero break; case 1:/null pointer int b=null; k=b0; break; case 2; /array index out of b

9、ound int c=new int2; k=c9; break; case 3: /string index out of bound char ch="abc".charAt(99); break; catch(Exception e) System.out.println("nTestcase#"+i+"n"); System.out.println(e); (3)在實驗三中的超市、商品類中創(chuàng)建一個自定義異常類。 要求:在定義商品類時,若銷售商品數(shù)量大于余額則作為異常處理(InsufficientFundsException)。

10、提示:1 產(chǎn)生異常條件是某類商品銷售數(shù)量大于庫存額,因此是否拋出異常要先判斷該條件。2 確定產(chǎn)生異常的方法,應(yīng)該在sale方法中產(chǎn)生異常Insufficient Funds Exception。3 處理異常安排在調(diào)用sale的時候,因此sale方法要聲明異常,由上級方法捕獲并處理。4 要定義好自己的異常。3.實驗步驟及結(jié)果在實驗過程中記錄實驗步驟及其結(jié)構(gòu)。4.實驗步驟及結(jié)果實驗過程中,注意記錄以下內(nèi)容:(1) 實驗過程中實驗步驟及其結(jié)果。(2) 遇到的問題及解決辦法。(3) 實驗體會。實驗5 多線程編程1.實驗?zāi)康?1) 現(xiàn)成的概念、線程的生命周期。(2) 多線程的編程:擴展Thread類與使

11、用Runnable接口。(3) 使用多線程機制實現(xiàn)動畫2.實驗內(nèi)容(1) 運行下面的程序,理解用創(chuàng)建Thread子類的方法實現(xiàn)多線程。/S09_01_Thread.JavaImport java.util.*;class S09_01_Thread extends Thread int pauseTime; String name; public S09_01_Thread(int x,String n) pauseTime=x; name=n;public void run() while(true) try system.out.println(name+":"+new

12、 Date(System.currentTimeMillis(); Tread.sleep(pauseTime); catch(Exception e)System.out.println(e); static public void main(String srgs) S09_01_Thread tp1=new S09_01_Thread(1000,"Fast"); tp1.start(); S09_01_Thread tp2=new S09_01_Thread(3000,"Slow"); tp2.start(); (2) 運行下面的程序,理解用實現(xiàn)R

13、unnable接口的方法實現(xiàn)多線程。/S09_02_Thread.JavaImport java.util.*;class S09_02_Thread implements Runnable int pauseTime; String name; public S09_02_Thread(int x,String n) pauseTime=x; name=n;public void run() while(true) try system.out.println(name+":"+new Date(System.currentTimeMillis(); Tread.slee

14、p(pauseTime); catch(Exception e)System.out.println(e); static public void main(String srgs) Thread t1=new Thread(new S09_02_Thread(1000,"Fast"); t1.start(); Thread t2=new Thread(new S09_02_Thread(3000,"Slow"); t2.start(); (3) 創(chuàng)建簡單的程序ThreeThread.java,該程序?qū)?chuàng)建三個線程,每個線程應(yīng)當(dāng)顯示它所運行的時間(可以考

15、慮使用Date類或Calendar類)。3.實驗預(yù)習(xí)(1) 將本章所學(xué)內(nèi)容要點進行整理,熟練掌握線程的編程要領(lǐng)。(2) 寫出實驗內(nèi)容中第(3)題程序的源代碼,作為預(yù)習(xí)報告。4.實驗步驟及結(jié)果實驗過程中,注意記錄以下內(nèi)容:(1) 實驗過程中實驗步驟及其結(jié)果。(2) 遇到的問題及解決辦法。(3) 實驗體會。實驗6 圖形用戶界面編程1.實驗?zāi)康?掌握文本組件、按鈕和單、復(fù)選按鈕組件的使用;掌握列表的使用,鼠標(biāo)、鍵盤事件的處理;掌握布局控制的方法。2.實驗內(nèi)容(1) 編寫一個Applet程序響應(yīng)鼠標(biāo)事件,當(dāng)鼠標(biāo)事件發(fā)生時,在狀態(tài)條顯示相應(yīng)的時間信息。提示:使用showStatus(字符串)方法。(2)

16、 完成圖6-1所示的GUI布局管理,不需要實現(xiàn)功能。圖6-1 要實現(xiàn)的GUI布局管理(3) 試設(shè)計一窗口,內(nèi)含一個按鈕。開始運行時,按鈕顯示“Click Me”字樣,當(dāng)按鈕按下時,按鈕顯示為“Click Me Again”字樣,再按一次,則按鈕顯示“Click Me”字樣,依次循環(huán)。(4) 仿照Windows 2000/XP系統(tǒng)提供掃雷游戲編寫一個類似功能和界面的掃雷程序。(5) 編寫一個簡易文本編輯器,參考界面如圖6-2所示。圖6-2 簡易文本編輯器運行效果圖要求:包含基本的打開、保存、新建等功能。包含菜單,能夠?qū)ξ谋镜淖煮w類型和顏色進行設(shè)置,力求界面美觀。3.實驗預(yù)習(xí)復(fù)習(xí)本章所學(xué)內(nèi)容,思考

17、以下問題:(1) Java語言是跨平臺的編程語言,那么圖形用戶界面如何做到跨平臺?(2) AWT有哪些組件和容器?它們各自的使用方法是什么?(3) AWT的事件處理模型是什么?原理又如何?(4) 什么是Swing?它和AWT比有什么優(yōu)點?使用上有什么區(qū)別?4.實驗步驟及結(jié)果實驗過程中,注意記錄以下內(nèi)容:(1) 實驗過程中實驗步驟及其結(jié)果。(2) 遇到的問題及解決辦法。(3) 實驗體會。實驗7 輸入與輸出1.實驗?zāi)康?1) 掌握J(rèn)ava兩種基本輸入/輸出流類的使用。(2) 掌握J(rèn)ava文件類型的使用。(3) 掌握文件的輸入、輸出方法。2.實驗內(nèi)容(1) 編寫程序,實現(xiàn)從鍵盤輸入字符串并在屏幕上輸

18、出。(2) 利用Java文件類File的方法,獲取磁盤文件的文件名、長度、大小等特性。(3) 編寫程序,利用Java字符流文件輸入/輸出類,實現(xiàn)將源程序復(fù)制到另一個文件中。(4)編寫一個程序,比較兩個文件的內(nèi)容是否相同。(5)編寫一個程序,求2200之間的素數(shù),并將結(jié)果保存在文件prime.dat中。再從該文件中讀取內(nèi)容并在屏幕上顯示出來。3.實驗預(yù)習(xí)(1) 將本章所學(xué)內(nèi)容要點進行整理,熟練掌握網(wǎng)絡(luò)的編程要領(lǐng)。 (2) 寫出實驗內(nèi)容中的源代碼,作預(yù)習(xí)報告。 4.實驗步驟及結(jié)果實驗過程中,注意記錄以下內(nèi)容:(1) 實驗過程中實驗步驟及其結(jié)果。(2) 遇到的問題及解決方法。(3) 實驗體會。實驗8 網(wǎng)絡(luò)編程1.實驗?zāi)康?1) 掌握TCP編程:Sodket的概念和編程方法。(2) 掌握URL類的使用:URL的概念和編程。2.實驗內(nèi)容(1)使用socket編寫一個服務(wù)器端程序,服務(wù)器端程序在端口8888監(jiān)聽,如果它接到客戶端發(fā)來的"hello"請求時會回應(yīng)一個&qu

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論