




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、Java語言程序設(shè)計 實驗講義黑龍江大學(xué)計算機(jī)科學(xué)技術(shù)學(xué)院2010年3月前 言Java語言程序設(shè)計實驗在面向?qū)ο蟪绦蛟O(shè)計的基礎(chǔ)上,闡述Java語言的編程基礎(chǔ)及其設(shè)計方法。內(nèi)容包括:Java程序的輸入輸出、表達(dá)式與運(yùn)算符、結(jié)構(gòu)化程序設(shè)計、類、屬性和方法、繼承和重載、包和接口、Applet與圖形用戶界面以及相關(guān)Java網(wǎng)絡(luò)設(shè)計等知識,本課程注重實際應(yīng)用操作,采用實例講解為學(xué)生進(jìn)一步學(xué)習(xí)J2EE和J2ME打下技術(shù)基礎(chǔ)。結(jié)合對實例的開發(fā),以學(xué)生為主體,充分發(fā)揮學(xué)生的主觀能動性,引導(dǎo)學(xué)生自學(xué)教材部分內(nèi)容,并鍛煉學(xué)生自行開發(fā)各種小型程序模塊;培養(yǎng)和鍛煉學(xué)生利用Java語言進(jìn)行網(wǎng)絡(luò)編程的能力。Java語言程
2、序設(shè)計實驗是以程序設(shè)計操作為主的技能課程,它由若干個獨立的實驗項目組成,與相應(yīng)的理論課Java語言程序設(shè)計配套,本課程的目標(biāo)是:(1) 加深學(xué)生對課堂講授內(nèi)容的理解,從計算機(jī)語言的基本概念、面向?qū)ο蟪绦蛟O(shè)計的基本方法、語法規(guī)則等方面加深理解,打好面向?qū)ο蟪绦蛟O(shè)計、軟件開發(fā)的良好基礎(chǔ)。(2) 在上機(jī)實驗中,提高學(xué)生對Java 語言各部分內(nèi)容的綜合使用能力,逐步掌握J(rèn)ava語言程序設(shè)計的規(guī)律與技巧。(3) 在對Java 程序的調(diào)試過程中,提高學(xué)生分析程序中出現(xiàn)的錯誤和排除這些錯誤的能力。(4) 通過上機(jī)實踐,加深學(xué)生對計算機(jī)軟件運(yùn)行環(huán)境、Java 集成開發(fā)環(huán)境的了解。實驗要求Java語言程序設(shè)計實
3、驗是與Java語言程序設(shè)計理論課配套的實驗課程。通過本課程的實驗訓(xùn)練,要求學(xué)生能運(yùn)用所學(xué)理論知識進(jìn)行基本的面向?qū)ο蟪绦蛟O(shè)計,培養(yǎng)其規(guī)范的編程習(xí)慣,掌握基本的操作技能和編程思想。同時要注意培養(yǎng)學(xué)生實事求是的科學(xué)態(tài)度,相互協(xié)作的團(tuán)隊精神,為學(xué)習(xí)后續(xù)課程,參加實際工作和開展科學(xué)研究打下良好的基礎(chǔ)。具體要求是:(1) 本課程以實驗為主,配合理論課的教學(xué)。任課教師需向?qū)W生講清課程的性質(zhì),任務(wù),要求,課程安排和進(jìn)度,平時考核內(nèi)容,期末考試辦法,實驗守則及實驗室安全制度等。(2) 本課程主要設(shè)置下列類型的實驗:(1)基本操作訓(xùn)練,(2)驗證性及設(shè)計性實驗;整個實驗過程包括課前準(zhǔn)備,實驗操作,實驗報告等環(huán)節(jié)。
4、學(xué)生在實驗前必須進(jìn)行準(zhǔn)備。(3) 根據(jù)實驗內(nèi)容不同,基本操作性的實驗1 人1 組,設(shè)計性實驗可根據(jù)情況多人一組,每個實驗要求在規(guī)定時間內(nèi)由學(xué)生獨立完成。(4) 實驗過程中,老師應(yīng)在實驗室進(jìn)行巡視,及時回答問題,糾正學(xué)生的錯誤操作,檢查學(xué)生的實驗報告。(5) 任課教師要認(rèn)真?zhèn)湔n,提前預(yù)做實驗,上好每一堂課。實驗前清點學(xué)生人數(shù)。實驗的驗收將分為兩個部分。第一部分是上機(jī)操作,包括設(shè)計結(jié)果的源程序的驗收與檢查。第二部分是提交書面的實驗報告。實驗1 Java 程序的編輯、編譯、運(yùn)行環(huán)境(2學(xué)時)1.實驗內(nèi)容(1) 編寫并調(diào)試運(yùn)行HelloWorld應(yīng)用程序。(2) 編寫并調(diào)試運(yùn)行HelloWorld小應(yīng)
5、用程序。(3) 設(shè)置path和classpath環(huán)境變量。程序調(diào)試通過后填寫實驗報告。2.預(yù)習(xí)內(nèi)容Java語言概述3.實驗類型驗證型4.實驗?zāi)康?1) 了解 Java 程序運(yùn)行環(huán)境;(2) 掌握程序調(diào)試的全部過程;(3) 學(xué)會編寫和調(diào)試 Java Application 和 Java Applet 程序;(4) 掌握java環(huán)境變量的配置 5.實驗要求(1) 在修改源程序文件名時,測試源程序文件名是否必須與公有類類名一致;若源程序中沒有公有類,源程序文件名可以如何命名;(2) 注意觀察字節(jié)碼文件何時生成,在何路徑下生成;(3) 掌握設(shè)置環(huán)境變量的方法。實驗2 Java基本語法(2學(xué)時)1.實驗
6、內(nèi)容(1)實現(xiàn)一個整數(shù)N的階乘運(yùn)算。N為固定常數(shù)。(2)在屏幕上按如下格式輸出乘法口訣表:1X1=11X2=2 2X2=41X3=3 2X3=6 3X3=9其中,每行的多個乘法公式之間用t分割(3)編寫一個簡單的猜數(shù)游戲程序:l 利用Math.random()方法生成0-1之間的double型數(shù)dNum,將dNum轉(zhuǎn)換為0-100之間的整數(shù)iNum。l 利用KeyInput.readInt()方法接收鍵盤輸入的整數(shù)inNum。如果inNum小于iNum,在屏幕上顯示“輸入的值小,請輸入更大的數(shù).”;如果inNum大于iNum,在屏幕上顯示“輸入的值大,請輸入更小的數(shù).”;如果inNum等于iN
7、um,在屏幕上顯示“猜對了.”,并結(jié)束運(yùn)行。l 猜測錯誤的時候,重新輸入inNum,直到猜對為止。如果猜測10次后仍未猜對,顯示“猜測次數(shù)已達(dá)10次,猜數(shù)失敗.”,并結(jié)束程序的運(yùn)行。2.預(yù)習(xí)內(nèi)容常用控制語句的格式System.out.print和System.out.println方法的區(qū)別3.實驗類型驗證型4.實驗?zāi)康?1)掌握J(rèn)ava循環(huán)控制語句和System.out.print、System.out.println方法的使用(2)掌握J(rèn)ava隨機(jī)數(shù)方法和鍵盤輸入類KeyInput的使用5.實驗要求(1)階乘計算部分必須用函數(shù)的遞歸調(diào)用來實現(xiàn),函數(shù)定義時應(yīng)聲明為static,如:Stati
8、c long getFactorial(int i) (2) 乘法口訣表部分l 編寫NineMultiply類l 在main方法中實現(xiàn)乘法口訣表的輸出(3) 猜數(shù)游戲部分l 編寫NumGuessGame類l 在main方法中定義相關(guān)變量l 生成dNum和iNuml 利用KeyInput.readInt(),獲取inNum值l 根據(jù)inNum和iNum值,顯示相應(yīng)信息l 如果猜測10次仍未成功,結(jié)束程序的運(yùn)行6.思考題l 如何將程序修改成可以猜測多個數(shù)的程序?l 如何將猜數(shù)游戲程序編寫成更為靈活的類?實驗3類、對象以及包的使用(6學(xué)時)1.實驗內(nèi)容(1) 實現(xiàn)一個Point類,該類包含表示坐標(biāo)的
9、兩個int型變量x、y,構(gòu)造方法Point()和Point(int xx, int yy),返回x值和y值的int getX()和int getY()方法,計算兩點間距離的double distance(Point)方法。其中計算平方根用Math.sqrt()方法。(2) 實現(xiàn)一個Circle類,該類包含表示圓心的Point型變量center,表示半徑的int radius變量,以及構(gòu)造方法Circle()、Circle(int xx,int yy,int r)、Circle(Point c,int r),返回周長和面積的int perimeter()、double area()方法,返回兩個
10、圓是否為同一個圓(返回0)、同心圓(返回1)、相交的圓(返回2)、分離的圓(返回3)、包含的圓(返回4)等關(guān)系的int relation(Circle c)等方法。PI值可以用Math.PI常量。(3) 實現(xiàn)測試上述兩個類的ClassTest類。該類在main方法中分別創(chuàng)建若干個Point對象和Circle對象,并調(diào)用相關(guān)方法,輸出方法的返回值,驗證其正確性。(4) 將1-2實驗中類的包名分別調(diào)整為experiment?,并重新運(yùn)行,驗證是否運(yùn)行正確。其中?表示實驗編號。(5) 實現(xiàn)Rectangle類和RectangleTest類。其中,Rectangle類隸屬于包的包名為experimen
11、t9,含有兩個方法:構(gòu)造方法Rectangle()和計算面積的方法area();RectangleTest類不屬于experiment9包,利用RectangleTest類調(diào)用包experiment9中的Rectangle類,計算矩形面積。(6) 程序調(diào)試通過后填寫實驗報告。2.預(yù)習(xí)內(nèi)容(1) 類的組成:成員變量、成員方法、構(gòu)造方法(2) 對象的創(chuàng)建和使用(3) Java包及其使用方法3.實驗類型 設(shè)計型4.實驗?zāi)康?1)掌握J(rèn)ava類的設(shè)計原理和對象的使用方法(2)理解包的概念以及package語句的用法。(3)掌握編譯和運(yùn)行包的方法。(4)理解import語句的用法。(5)掌握自己設(shè)計包的
12、方法和步驟以及調(diào)用自己設(shè)計的包的方法。5.實驗要求(1) 編寫Point類,實現(xiàn)相關(guān)方法(2) 編寫Circle類,實現(xiàn)相關(guān)方法(3) 編寫ClassTest類,并在main方法中創(chuàng)建兩個Point對象和兩個Circle對象,對象的參數(shù)可以用固定值(4) 調(diào)用Point和Circle的相關(guān)方法,并把返回值輸出到屏幕上。(5)l 把實驗1-2的程序制作為2個Java包。l 實驗中的包名為experiment?,其中?表示實驗編號。例如,實驗1中的HelloWorldApp類的所隸屬的包名為experiment1。(6)l 實現(xiàn)Rectangle類,含有兩個方法:構(gòu)造方法Rectangle()和計
13、算面積的方法area()。l Rectangle類隸屬于包的包名為experiment9l 實現(xiàn)RectangleTest類。利用RectangleTest類調(diào)用包experiment9中的Rectangle類,計算矩形面積。(7) 提交調(diào)試通過的Java程序和實驗報告。6.思考題(1) 為什么distance()和relation()方法只需要一個參數(shù)?提供兩個或更多的參數(shù)有什么缺點?(2) relation()方法只返回整數(shù),而不是在方法內(nèi)部直接輸出判斷結(jié)果。這么做有什么優(yōu)點?實驗4繼承性與Object類(2學(xué)時)1.實驗內(nèi)容(1) 編寫一個代表圓柱體的Cylinder類,該類是Circl
14、e類的子類。Cylinder類包括圓柱體的高度變量height以及計算圓柱體的體積方法volume()和計算表面積的方法surfaceArea()。(2) 編寫測試Cylinder類的CylinderTest類,并在該類得main方法中調(diào)用Cylinder類的相關(guān)方法。(3) 重寫Point和Circle類的equals()、toString()方法,并測試這些方法的正確性。(4) 定義四則運(yùn)算接口Computable,接口中包括加、減、乘、除四個抽象方法。再定義接口的實現(xiàn)類和測試類兩個類,測試類中嘗試使用接口回調(diào)調(diào)用四則運(yùn)算方法。(5) 程序調(diào)試通過后填寫實驗報告。2.預(yù)習(xí)內(nèi)容(1) 類的定
15、義(2) 繼承機(jī)制及其作用(3) Object類的作用(4) equals()方法和toString()方法3.實驗類型 設(shè)計型4.實驗?zāi)康恼莆認(rèn)ava繼承機(jī)制的使用方法掌握Object類與其它類之間的關(guān)系5.實驗要求(1) 確定Circle類的包名(2) 在Cylinder類中用import導(dǎo)入Circle類(3) 編寫Cylinder類的代碼(4) 編寫CylinderTest類的代碼(5) 在Point和Circle類中分別添加equals()方法和toString()方法(6) 測試上述方法的正確性6.思考題您還可以設(shè)計哪些Circle類的子類?為什么equals()方法和toStri
16、ng()方法的訪問類型必須為public?實驗5數(shù)組和向量(2學(xué)時)1.實驗內(nèi)容(1) 設(shè)計和編寫代表矩陣的Matrix類。該類包括矩陣行列數(shù)變量int rows和int cols,矩陣數(shù)據(jù)數(shù)組double data,構(gòu)造方法Matrix()、Matrix(int rows,int cols)、Matrix(int rows,int cols,double data),獲取某元素值的方法getData(int row,int col),設(shè)置某元素值的方法setData(int row,int col,double value),計算兩個矩陣的乘積的方法multiply(Matrix m)以及t
17、oString()等內(nèi)容。(2) 編寫測試類MatrixTest,并在該類中創(chuàng)建兩個矩陣對象,計算其乘積。(3) 驗證教材例7.5,了解向量Vector的用法(4) 程序調(diào)試通過后填寫實驗報告。2.預(yù)習(xí)內(nèi)容(1) 數(shù)組的定義(2) 類的定義(3) 向量的使用3.實驗類型 設(shè)計型4.實驗?zāi)康恼莆諗?shù)組的定義和使用,了解向量的用法。5.實驗要求(1) 編寫Matrix類(2) 編寫MatrixTest類。在該類中通過鍵盤輸入方式確定所要創(chuàng)建的兩個矩陣的行列數(shù),根據(jù)行列數(shù)隨機(jī)生成數(shù)據(jù)或鍵盤輸入,并通過setData方法生成矩陣的內(nèi)容。(3) 計算矩陣的乘積,并把結(jié)果通過toString方法輸出到屏幕上
18、6.思考題(1) 您還可以編寫哪些Matrix類的方法?(2) 如果沒有setData方法,如何將矩陣的元素值賦值? 實驗6 異常處理(2學(xué)時)1.實驗內(nèi)容將教材書后的習(xí)題二第6小題調(diào)試通過。2.預(yù)習(xí)內(nèi)容異常處理3.實驗類型 其它型4.實驗?zāi)康?1) 理解異常的使用和自定義異常類的方法。(2) 理解throw和throws的區(qū)別和聯(lián)系。5.實驗要求(1) 將教材書后的習(xí)題二第6小題調(diào)試通過。(2) 提交調(diào)試通過的Java程序。實驗7 輸入/輸出處理(2學(xué)時)1.實驗內(nèi)容(1)結(jié)合例10-3和11-3,實現(xiàn)文件復(fù)制和顯示功能的程序。(2)實現(xiàn)一個簡單的文本編輯器,該編輯器從鍵盤依次讀入成行的文本
19、,并將文本內(nèi)容及時寫入文件中,文件名由命令行參數(shù)指定。如果輸入“stop”,運(yùn)行結(jié)束。2.預(yù)習(xí)內(nèi)容輸入/輸出處理、輸入/輸出處理中的字符流操作3.實驗類型 設(shè)計型4.實驗?zāi)康?1) 理解FileInputStream和FileOutputStream類的使用方法。(2) 理解字符流操作:練習(xí)面向字符的I/O 流操作(3) 能夠創(chuàng)建、讀寫、更新文件5.實驗要求(1) 結(jié)合例10-3和11-3,實現(xiàn)文件復(fù)制和顯示功能的程序。把程序調(diào)試通過。(2) 在以上操作中,均要求帶有異常處理結(jié)構(gòu)(3) 提交調(diào)試通過的Java程序。實驗8 GUI程序(2學(xué)時)1.實驗內(nèi)容(1) 編寫一個簡易計算器程序,其界面如下圖所示:(2) 用戶界面可以手工編碼的形式構(gòu)造,也可以使用Netbeans、Eclipse等開發(fā)工具
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年心理健康教育課程考試試題
- 幼兒園指南試題及答案
- 管工進(jìn)場考試題及答案
- 保險儲備面試題及答案
- 書法教師試題及答案
- 電子電路設(shè)計考試題目及解析
- 網(wǎng)絡(luò)工程師綜合能力試題及答案
- 常見網(wǎng)絡(luò)設(shè)備的性能對比與試題及答案
- 網(wǎng)絡(luò)工程師技術(shù)難題試題及答案
- 軟件設(shè)計的重要性與考試試題及答案
- 醫(yī)療器械監(jiān)督管理條例培訓(xùn)2024
- 咨詢類合同合同范例
- 2024年全國黃金行業(yè)職業(yè)技能競賽(礦山救護(hù)工)理論考試題庫(含答案)
- 銑床主軸箱設(shè)計
- 刑法總論:刑事法治的中國特色智慧樹知到答案2024年湘潭大學(xué)
- 鋼琴調(diào)律服務(wù)合同
- 愛國英雄霍去病歷史人物介紹
- 冠心病合并房顫患者PCI術(shù)后抗栓治療策略
- 2024年燕舞集團(tuán)限公司公開招聘高頻考題難、易錯點模擬試題(共500題)附帶答案詳解
- 2024年中考道德與法治時事政治試題庫附答案(綜合題)
- 從自在、自覺到自為:中華民族發(fā)展的歷史邏輯
評論
0/150
提交評論