java實驗教案_第1頁
java實驗教案_第2頁
java實驗教案_第3頁
java實驗教案_第4頁
java實驗教案_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、Java 程序設(shè)計實驗指導(dǎo)書作者:宋國柱2009年9月實驗一熟悉Java程序開發(fā)環(huán)境一、實驗?zāi)康?. 了解和使用JDK集成環(huán)境。2. 熟悉J2sdk集成環(huán)境的基本命令、功能和基本用法。配置環(huán)境變量3. 了解并熟悉eclipse開發(fā)工具。4. 能在eclispe中編寫并運行出簡單程序。二、實驗內(nèi)容與要求1.下載JDK,安裝并配置環(huán)境變量名 量 、更值 量 、更說 明0M H裝 安K D J 定 假 k sdJ2 eJDK所在搜索路徑h at pbbaa_aJJ實用程序的位置說明類和包文件的搜索路徑2. 下載并熟悉 eclipse 開發(fā)工具3. 在 eclipse 中編寫下面的 java 應(yīng)用程序

2、并運行。/ HelloWorldApp.javapublic class HelloWorldApppublic static void main(String args)System.out.println( 這是我的第一個java應(yīng)用程序!);4. 編寫下面 applet 程序并運行。/ HelloWorldApplet.javaimport java.awt.*;import java.applet.*;public class HelloWorldApplet extends Appletpublic void paint(Graphics g)g.drawString( ” Hell

3、o java in Applet! ” ,20,20);5編寫應(yīng)用程序,計算 100以內(nèi)所有奇數(shù)的和。6輸出 100 以內(nèi)所有素數(shù)實驗二 Java 語言基礎(chǔ)1. 我國古代的張丘建算經(jīng) 中有這樣一道著名的百雞百錢: “雞翁一,值錢五, 給母一,值錢三,雞雛三,值錢一。百雞百錢,問翁、母、雛各幾何?”意思是 說:公雞每只 5元,母雞每只 3元,小雞 3只一元,用 100元買 100只雞,問公 雞、母雞和小雞各能買多少只?2. 已知圓的半徑為r,求圓的周長c,面積s,圓球體積v。3. 請編寫一段程序,輸入一串字符串,將字符串譯成密碼,密碼規(guī)則是用原來的字母后面第4個字母代替原來的字母。例如:字母 a

4、后面第4個字母是e,用E來代替A。因此,China應(yīng)譯為Glmre。4. 猜數(shù)字。編寫一個Java應(yīng)用程序,實現(xiàn)如下功能: 隨機分配給客戶一個1 100之間的整數(shù)。用戶從鍵盤輸入自己的猜測。程序返回提示信息,提示信息分別是“猜大了”、“猜小了”、和“猜對了” 用戶可根據(jù)提示信息再次輸入猜測,直到提示信息是“猜對了”。提示:正確的隨機整數(shù)可定義為:int realNumber=(i nt)(Math.ra ndom()*100)+1;5. 從鍵盤上輸入10個整數(shù),并放入一個一維數(shù)組中,然后將其前5個元素與后 5個元素對換,即:第1個與第10個元素互換,第2個元素與第9個元素互換 第5個元素與第6

5、個元素互換。分別輸出數(shù)組原來各元素的值和對換后各元素的 值?;州斎氲臄?shù)絹是=M 7弓 L呻 0 474s24S US悶挾后的數(shù)組是:RE 34Q石斗四詰 4245&4 誌丁咗 0儲擁任意犍紈續(xù).實驗三控制流程1. 有4個整數(shù)a,b,c,d,由鍵盤輸入,輸出其中最大的數(shù)2. 輸出以下圖案:*3. 編寫一個Java應(yīng)用程序,用戶從鍵盤輸入一個 1-99999之間的數(shù),程序?qū)⑴?斷這個數(shù)是幾位數(shù), 并判斷這個數(shù)是否是回文數(shù)。 回文數(shù)是將該數(shù)含有的數(shù)字逆 序排列后得到的數(shù)和原數(shù)相同。如 12121 和 3223等都是回文數(shù)。4. 水仙花數(shù)是三位數(shù),它的各位數(shù)字的立方和等于這個三位數(shù)本身,例如:371=

6、33+73+13, 371 就是一個水仙花數(shù)。找出所有水仙花數(shù) .5. 編寫 java 應(yīng)用程序,實現(xiàn)冒泡排序算法。實驗四 類 /對象1. 上機運行書中,例題 4.3 ,例題 4.4 ,例題 5.2.2. 一個計算機商店銷售很多品牌的計算機, 每臺計算機都應(yīng)該記錄其配置信息 配置信息包括:處理器類型和時鐘頻率、屏幕尺寸、內(nèi)存、硬盤大小。 請構(gòu)造一個類來表示計算機,并為該類添加打印配置信息的方法。3. 編寫一個類實現(xiàn)銀行賬戶的概念,包括的屬性有“賬號” 、“儲戶姓名”、“地 址”、“存款余額”,包含的方法有“存款”、“取款”、“查詢”、“計算利息”。編寫 主函數(shù)驗證。4. 編寫一個java應(yīng)用程

7、序,該程序中有3個類:Trangle。Lader和Circle,分 別用來刻畫“三角形” 、“梯形”、“圓形”。具體要求如下:Trangle 類具有類型為 double 的三個邊以及周長、面積屬性, trangle 類具有返回周長、面積的功能。另外, Trangle 類還具有一個 boolean 類型的屬性,該屬性用來判斷三個數(shù)能否構(gòu)成一個三角形。Lader 類具有類型為 double 的上底、下底、高、面積屬性。具有返回面 積的功能。Circle 類具有類型為 double 的半徑、周長和面積屬性,具有返回周長、 面積的功能。5. 定義一個父類Person,屬性包含姓名、地址、城市、國家、郵

8、編,方法包括 構(gòu)造方法、分別設(shè)置各個屬性、分別返回各個屬性、顯示所有屬性。Perso na子類有兩個:學(xué)生類和教師類。學(xué)生類自己的屬性包括主修專業(yè)、學(xué)號、年級、成績(成績每名同學(xué)包括 3門成績),增加的方法包括設(shè)置和返回增加的屬性,顯 示方法以及構(gòu)造方法, 教師類自己的屬性包括部門、 收入, 增加的方法包括設(shè)置 和返回增加的屬性, 顯示方法以及構(gòu)造方法, 教師類有一個職工子類, 其增加的 屬性為小時工資, 增加的方法包括設(shè)置和返回增加的屬性、 顯示方法以及構(gòu)造方 法,然后編制測試程序進行測試。(選作:現(xiàn)有 10 名同學(xué), 求每門功課的平均分,并顯示)6. 編 寫 一 個 java 應(yīng) 用 程

9、序 , 除 了 主 類 外 , 該 程 序 還 有 4 個 類 : People,ChinaPeople,AmericanPeople 和 BeijingPeople 類。要求如下:People 類有訪問權(quán)限是 protect 的 double 類型成員變量 height 和 weight , 以及 public void speakHello()、public void averageHeight()和 publicvoid averageWeight() 方法。ChinaPeople 類是 People 的子類, 新增了 public void chinaGongfu() 方法。 要求 C

10、hinaPeople 重寫父類的 public void speakHello()、 public voidaverageHeight() 和 public void averageWeight() 方法。AmericanPeople 類是 People 的子類,新增了 public void americanBoxing() 方法。要求 People 重寫父類的 public void speakHello() 、 public void averageHeight() 和 public void averageWeight() 方法。BeijingPeople 類是 ChinaPeople

11、 的子類,新增 public void beijingOpera() 方法。要求 BeijingPeople 重寫父類的 public void speakHello() 、 public void averageHeight() 和 public void averageWeight() 方法。思考題:1為什么說構(gòu)造函數(shù)是一種特殊的方法?特殊在哪里?構(gòu)造函數(shù)什么時候執(zhí) 行?被誰調(diào)用?2. 內(nèi)部類inner class和外部類的區(qū)別?3抽象類和接口的區(qū)別?實驗五 字符串1. 隨機鍵盤輸入兩英文字符串 s1,s2 ;判斷 s1,s2 的長度。截取 s1 中下標(biāo)為 511的子字符串并輸出。將 s1

12、 和 s2 連接成新的字符串并輸出。將s2中所有出現(xiàn)的字符a用r取代并輸出。將si中所有的字符改為小寫并輸出,將 s2中所有的字符改成大寫并輸出 搜索子字符串” ab”第一次,和最后一次在s2中出現(xiàn)的位置。2. 隨機輸入可變長字符串 strK ; 判斷 strk 的長度。將字符串“ END連接到strK后面將字符全“ INSERT插入到strK下標(biāo)為7的后面。將 strk 翻轉(zhuǎn)。用字符串“ replace ”取代 strK 中下標(biāo) 29的子字符串。3. 上機運行例題 6.6 ,例題 6.8 ,體會 equals() 與=的分別。 上機運行下面程序:public static void main

13、(String args)String s = new String(abc);/執(zhí)行到這一行時,創(chuàng)建了幾個對象?String s1 = abc;/String s2 = new String(abc);/執(zhí)行到這一行時,創(chuàng)建了幾個對象?執(zhí)行到這一行時,創(chuàng)建了幾個對象?輸出結(jié)果是什么?輸出結(jié)果是什么?輸出結(jié)果是什么?System.out.println(s = s1);/System.out.println(s = s2);/System.out.println(s2 = s1);/4. 輸入一行字符,統(tǒng)計其中有多少個單詞,單詞之間用空格分隔開。5. 輸入一個字符串 ,內(nèi)有數(shù)字和非數(shù)字字符 ,

14、例如:A123x456kw789$34tyu678將其中連續(xù)的數(shù)字作為一個整數(shù) ,依次存放到一數(shù)組 a 中.例如,123 放在 a0,456 放在 a1統(tǒng)計共有多少個整數(shù) ,并輸出這些數(shù) .6. 隨機輸入一個字符串 str1 ,沒有重復(fù)出現(xiàn)字符并輸出。譬如“ teeter ”就輸出“r ”。如果是“teeteirik”輸出k”實驗六輸入輸出流1. 上機運行調(diào)試?yán)} 8.1 ,將該例題命名為類 :Text2. 讀取上題 Text.java 文件。并將其內(nèi)容顯示出來。用 available 方法判斷剩余的字節(jié)數(shù)。用read()方法讀取前60個字節(jié)。用 skip() 方法跳過 30個字節(jié)。用 rea

15、d() 方法讀取下面的字節(jié)。3. 讀取從鍵盤輸入的一行文本并將其存儲到文本 line.txt 中。4. 數(shù)據(jù)流。寫幾個 java 類型的數(shù)據(jù),如整型、字符型、實型。到文件 jarry.dat 中。并再讀出來。5. 上機運行例題 8.13 ,8.16.實驗七實用工具類1. 上機運行例9.5,例9.9.2. 已知三角形的三邊a, b, c。求其面積。3. 編寫一個應(yīng)用程序,用戶從鍵盤輸入5個學(xué)生的姓名和分?jǐn)?shù),按成績排序輸出 學(xué)生的姓名和分?jǐn)?shù)。4. 編寫一個java應(yīng)用程序,用戶從輸入對話框輸入兩個日期,程序判斷兩個日 期的大小關(guān)系,以及兩個日期之間的間隔的天數(shù)。5. 輸出2009年9月的日歷頁。6

16、. 計算兩個大整數(shù)的和、差、積、商。7. 使用堆棧結(jié)構(gòu)輸出an的若干項,其中an=2an i+3an 2,a仁3,a2=8.實驗八線程1. 有兩個線程:student和teacher,其中student準(zhǔn)備睡一個小時后再開始上 課,teacher在輸入3句“上課”后,吵醒休眠線程 student。2. 編寫一個應(yīng)用程序,有兩個線程,一個負責(zé)模仿自由落體運動,一個模仿水 平拋出運動。3. 線程thread1每隔一秒輸出一個整數(shù),輸出10個整數(shù)后,該線程掛起;thread2每隔一秒輸出一個整數(shù),輸出20個整數(shù)后,讓thread2調(diào)用notifyAII()方法,使得thread1線程繼續(xù)執(zhí)行。4.

17、編寫一個應(yīng)用程序,除了主線程外,還有兩個線程:first 和Second.first負責(zé)模擬一個紅色的按鈕從坐標(biāo)(10,60)運動到(100,60) ; seco nd負責(zé)模擬 一個綠色的按鈕從坐標(biāo)(100,60)運動到(200,60).實驗九 圖形用戶界面設(shè)計1.請設(shè)計一個如下圖所示的 GUI,不必做事件處理。r* ViuluT下岡際怕4cut ctn*x尸尸a FindEi2.請設(shè)計一個如下圖所示的 GUI,不必做事件處理3.請設(shè)計一個如下圖所示的 GUI,不必做事件處理4.請設(shè)計下圖所示的GUI,不必做事件處理5. 請設(shè)計下圖所示的GUI,不必做事件處理6. 猜數(shù)字小游戲, 程序中有兩個

18、按鈕 buttonGetNumber 和 buttonEnter ,單擊 buttonGetNumber 按鈕可以獲得一個隨機數(shù), 然后再一個文本框中輸入猜測 的數(shù),再單擊按鈕 buttonEnter 。7. 編寫應(yīng)用程序,有一個標(biāo)題為“計算”的窗口,窗口的布局為 FlowLayout 布局。設(shè)計 4 個按鈕,分別命名為“加”、“減”、“乘”、“除”,另外,窗口 中還有 3 個文本框。單擊相應(yīng)的按鈕,將兩個文本框的數(shù)字做運算,在第 三個文本框中顯示結(jié)果。要求處理NumberFormatException.(參考 GUI,如下圖 ) :8. 鼠標(biāo)事件: 當(dāng)在畫布上按下鼠標(biāo)左鍵時,在鼠標(biāo)指針位置處繪制一個圓; 當(dāng)按下鼠標(biāo)右鍵時,在鼠標(biāo)指針位置處繪制一個矩形; 當(dāng)鼠標(biāo)指針退出畫布是,清除繪制的全部圖形。9. 布局與日歷:編寫一個應(yīng)用程序,有一個窗口,該窗口為 BorderLayout 布 局。窗口的中心添加一個 Panel 容器: pCenter 。 pCenter 的布局是 7 行 7 列的 GridLayout 布局, pCenter 中放置 49 個標(biāo)簽,用來顯示日歷。 窗口的 北面添加一個 Panel容器,其布局是FlowLayout布局,pNorth放置兩個按 鈕: nextMonth 和 previousMonth, 單擊 nextMonth 按鈕,可以顯示當(dāng)前月

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論