java程序設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書2009版_第1頁(yè)
java程序設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書2009版_第2頁(yè)
java程序設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書2009版_第3頁(yè)
java程序設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書2009版_第4頁(yè)
java程序設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書2009版_第5頁(yè)
已閱讀5頁(yè),還剩63頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、計(jì)算機(jī)專業(yè)系列Java程序設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書2009版JAVA課程組 編寫姓名: 班級(jí): 學(xué)號(hào): 淮安信息職業(yè)技術(shù)學(xué)院計(jì)算機(jī)科學(xué)與工程系前言在程序設(shè)計(jì)應(yīng)用領(lǐng)域,面向?qū)ο蟮木幊碳夹g(shù)正在逐步替代面向過(guò)程的程序設(shè)計(jì)技術(shù),成為計(jì)算機(jī)應(yīng)用開發(fā)的主流,尤其在網(wǎng)絡(luò)應(yīng)用開發(fā)中,面向?qū)ο蟮腏ava語(yǔ)言編程和相關(guān)的Java技術(shù)應(yīng)用正在以前所未有的速度發(fā)展,網(wǎng)上購(gòu)物、網(wǎng)上銀行、遠(yuǎn)程教學(xué)、虛擬課堂、網(wǎng)絡(luò)游戲等都在紛紛使用Java技術(shù)。Java自1996年正式發(fā)布以來(lái),經(jīng)歷了初生、成長(zhǎng)和壯大的階段,現(xiàn)在已經(jīng)成為IT領(lǐng)域里的主流編程語(yǔ)言。程序設(shè)計(jì)是一門實(shí)踐性極強(qiáng)的科目,JAVA也不例外。為了方便同學(xué)們學(xué)習(xí)java程序設(shè)計(jì)這門

2、課,做好實(shí)驗(yàn),按照大綱的要求,配合教材的內(nèi)容,編寫本實(shí)驗(yàn)指導(dǎo)書。本實(shí)驗(yàn)指導(dǎo)書是為90學(xué)時(shí)的課程配套使用的,對(duì)于60學(xué)時(shí)或是更少學(xué)時(shí)的班級(jí)由任課老師根據(jù)授課內(nèi)容選題實(shí)驗(yàn)內(nèi)容。對(duì)于90學(xué)時(shí)的班級(jí)也可根據(jù)授課內(nèi)容適當(dāng)刪除部分實(shí)驗(yàn)。Java 程序設(shè)計(jì)是一門實(shí)踐性很強(qiáng)的課程,除了在課內(nèi)安排的實(shí)驗(yàn)外,鼓勵(lì)同學(xué)在課外更多的進(jìn)行編程練習(xí)。由于作者水平有限,書中難免有錯(cuò)誤和不妥之處,懇請(qǐng)廣大讀者、教師和同行專家批評(píng)指正。目 錄實(shí)驗(yàn)一 java開發(fā)環(huán)境的安裝、配置與使用3實(shí)驗(yàn)二 數(shù)據(jù)類型和運(yùn)算符11實(shí)驗(yàn)三 流程控制16實(shí)驗(yàn)四 類和對(duì)象的定義20實(shí)驗(yàn)五 方法22實(shí)驗(yàn)六 數(shù)組25實(shí)驗(yàn)七 繼承27實(shí)驗(yàn)八 抽象類和接口3

3、0實(shí)驗(yàn)九 包和訪問(wèn)權(quán)限33實(shí)驗(yàn)十 字符串35實(shí)驗(yàn)十一 集合類38實(shí)驗(yàn)十二 異 常41實(shí)驗(yàn)十三 I/O輸入輸出流44實(shí)驗(yàn)十四 swing (一)46實(shí)驗(yàn)十五 swing與GUI(二)48實(shí)驗(yàn)十六 swing (三)50實(shí)驗(yàn)十七 swing與GUI(四)53實(shí)驗(yàn)十八 Japplet小應(yīng)用程序55實(shí)驗(yàn)十九 數(shù)據(jù)庫(kù)編程(一)57實(shí)驗(yàn)二十 數(shù)據(jù)庫(kù)編程(二)59實(shí)驗(yàn)一 java開發(fā)環(huán)境的安裝、配置與使用【實(shí)驗(yàn)?zāi)康摹?、熟悉J2SDK開發(fā)環(huán)境及配置; 2、熟悉文本編輯器的使用;3、掌握J(rèn)ava Application的程序結(jié)構(gòu)和開發(fā)過(guò)程;4、熟悉集成開發(fā)環(huán)境Jbuilder2006等的使用;【實(shí)驗(yàn)準(zhǔn)備】1、

4、復(fù)習(xí)配套教材相關(guān)章節(jié)的內(nèi)容;2、預(yù)習(xí)本次實(shí)驗(yàn);【實(shí)驗(yàn)內(nèi)容】一、下載并安裝JDK為了建立基于SDK 的Java 運(yùn)行環(huán)境,需要先下載Sun 的免費(fèi)SDK 軟件包。SDK 包含了一整套開發(fā)工具,其中包含對(duì)編程最有用的是Java 編譯器、Applet 查看器和Java 解釋器。Sun公司網(wǎng)址:;注:此步驟可以不做,我們實(shí)驗(yàn)室機(jī)器JDK均已安裝完成。JDK均安裝在C:j2sdk1.4.2_05目錄下。二、設(shè)置系統(tǒng)環(huán)境變量JDK 中的工具都是命令行工具,要從命令行即MSDOS 提示符下運(yùn)行它們。很多人可能會(huì)不習(xí)慣,但這是Sun 特意采取的策略,為的是把精力更多地投入到Java 語(yǔ)言本身而不是花在開發(fā)工具

5、上。以Windows XP (Windows 2000類似)為例說(shuō)明設(shè)置過(guò)程。在桌面“我的電腦”圖標(biāo)上單擊右鍵,選擇“屬性”菜單,將出現(xiàn)系統(tǒng)特性設(shè)置界面,如圖所示。在“高級(jí)”選項(xiàng)卡中單擊“環(huán)境變量”按鈕。將出現(xiàn)“環(huán)境變量”設(shè)置界面,如圖所示。1、在“系統(tǒng)變量”框中選擇“Path”,然后單擊“編輯”按鈕,在出現(xiàn)的“編輯系統(tǒng)變量”對(duì)話框中,在“變量值”欄的命令前添加“C:j2sdk1.4.2_05bin;”命令,如圖所示。各個(gè)環(huán)境變量間用“;”號(hào)相隔。2、設(shè)置環(huán)境變量classpath,新建一個(gè)環(huán)境變量名:classpath,其值為“.;C:j2sdk1.4.2_05libtools.jar”。c

6、lasspath環(huán)境變量是java虛擬機(jī)尋找類文件的路徑,比如程序需要調(diào)用的類庫(kù)文件等,一般常用的類庫(kù)都包含在tools.jar里。“.”表示當(dāng)前目錄,一定要加。3、設(shè)置完成后,單擊“開始”“所有程序”“附件”“命令提示符”打開DOS 窗口,在命令提示符下輸入“java”或“javac”,回車后,如果出現(xiàn)其用法參數(shù)提示信息,則安裝正確,如圖所示。三、編輯運(yùn)行第一個(gè)java程序;.編寫一個(gè)簡(jiǎn)單的Java應(yīng)用程序,要求輸出“Welcome to Java!”。步驟:1、用文本編輯器(Windwos系統(tǒng)的“記事本”)編輯源代碼(1)單擊"開始"菜單,選擇"程序"

7、;“附件”“記事本”,啟動(dòng)“記事本”文本編輯器軟件。(2)錄入如下程序代碼public class Ex1 public static void main(String args ) System.out.println("Welcome to Java!"); 注意:a.)java源程序名一定要和主類名相同,并加”.java”擴(kuò)展名; b)java嚴(yán)格區(qū)分大小寫; c)在用記事本編輯保存java源方件時(shí),保存類型一定要選擇“所有文件”,這樣才能保證是java屬性的源文件。如下圖所示:(3)在MS-DOS命令行,進(jìn)入到Ex1.java源文件所在目錄,通過(guò)“javac Ex1

8、.java”編譯源文件;(4)運(yùn)行程序,運(yùn)行時(shí)不需要加擴(kuò)展名,如:java Ex1;如下圖所示;四、刪除剛才的Ex1.java源文件,將源文件保存為與類名不一致的名字,重新編譯上面的程序,寫出出錯(cuò)信息。五、了解application程序的主要結(jié)構(gòu),將上面的程序的主方法(即main())中的參數(shù)去掉重新編譯上面的程序,寫出出錯(cuò)信息。六、練習(xí)集成開發(fā)環(huán)境Jbuilder2006的使用。1、啟動(dòng)Jbuilder2006,在”file”菜單中點(diǎn)“newProject”新建一個(gè)工程;在新彈出來(lái)的窗口中指定工程名和路徑;2、在隨后的窗口中填寫相關(guān)信息,完成工程創(chuàng)建。3、工程創(chuàng)建好以后,在”file”菜單中

9、點(diǎn)“new”,進(jìn)入如下窗口; 4、點(diǎn)“class”新建一個(gè)類;進(jìn)入類信息設(shè)置窗口;類名等信息。5、點(diǎn)擊“OK”以后進(jìn)入源程序窗口;6、錄入如下程序,并寫出程序的運(yùn)行結(jié)果;public class Lingxingpublic static void main(String args) int a=11; for(int i=-a/2;i<=a/2;i+) for(int x=1;x<=Math.abs(i);x+) System.out.print(" "); for(int j=1;j<=a-2*Math.abs(i);j+) System.out.pr

10、int(" * "); System.out.println(); 寫出程序的運(yùn)行結(jié)果:7、在老師的指導(dǎo)在學(xué)習(xí)MyElipse6.5,NetBean6.1等目前較為流行的JAVA集成開發(fā)環(huán)境的使用?!究偨Y(jié)與體會(huì)】實(shí)驗(yàn)二 數(shù)據(jù)類型和運(yùn)算符【實(shí)驗(yàn)?zāi)康摹? 了解Java 的數(shù)據(jù)類型2 掌握各種變量的聲明方式。3 理解運(yùn)算符的優(yōu)先級(jí)。4 掌握J(rèn)ava 基本數(shù)據(jù)類型、運(yùn)算符與表達(dá)式的使用方法?!緦?shí)驗(yàn)準(zhǔn)備】一、復(fù)習(xí)配套教材相關(guān)章節(jié)的內(nèi)容;二、預(yù)習(xí)本次實(shí)驗(yàn);【實(shí)驗(yàn)內(nèi)容】1、以下程序是聲明不同數(shù)據(jù)類型的變量,錄入如下程序,調(diào)試運(yùn)行,寫出程序的運(yùn)行結(jié)果;public class NumTyp

11、e public static void main(String args) byte b=0x55;short s=0x55ff;int i=1000000;long l=3615L;char c='a'float f=0.23F;double d=0.7E-3;boolean B=true;String S="這是字符串類數(shù)據(jù)類型"System.out.println("字節(jié)型變量 b = "+b);System.out.println("短整型變量 s = "+s);System.out.println(&quo

12、t; 整型變量 i = "+i);System.out.println("長(zhǎng)整型變量 l = "+l);System.out.println("字符型變量 c = "+c);System.out.println("浮點(diǎn)型變量 f = "+f);System.out.println("雙精度變量 d = "+d);System.out.println("布爾型變量 B = "+B);System.out.println("字符串類對(duì)象 S = "+S);程序運(yùn)行結(jié)果:

13、2、將上面程序中l(wèi)ong l=3615L;改為:long l=3615;會(huì)出現(xiàn)什么情況?為什么?3、將上面程序中float f=0.23F;改為:float f=0.23;會(huì)出現(xiàn)什么情況?為什么?4、運(yùn)行下面的程序,掌握關(guān)系運(yùn)算與邏輯運(yùn)算 public class RelationAndCondition public static void main(String args)int a=25;int b=3;boolean d=a<b;System.out.println(a+""+b+"="+d);int e=3;d=(e!=0&&am

14、p;a/e>5);System.out.println(e+"!=0&&"+a+"/"+e+">5="+d);int f=0;d=(f!=0&&a/f>5);System.out.println(f+"!=0&&"+a+"/"+f+">5="+d); 程序運(yùn)行結(jié)果:5、分析上面第四題程序中如果把最后兩行換成如下語(yǔ)句,執(zhí)行的結(jié)果又是如何?并分析原因。d=(f!=0&a/f>5);System.

15、out.println(f+"!=0&"+a+"/"+f+">5="+d);5.下面代碼的輸出結(jié)果是什么?想一想b的值為什么是這樣。public class TypeChange public static void main(String args) byte a = 64;byte b;int i;i = a << 2;b = (byte) (a << 2);System.out.println("The Original value of a is:" + a);Syst

16、em.out.println("The value of i is:" + i);System.out.println("The value of b is:" + b);【總結(jié)與體會(huì)】實(shí)驗(yàn)三 流程控制【實(shí)驗(yàn)?zāi)康摹?掌握ifelse,switchcase分支;2掌握f(shuō)or,while,do-while等循環(huán);3掌握break,continue跳轉(zhuǎn)語(yǔ)句;【實(shí)驗(yàn)準(zhǔn)備】一、復(fù)習(xí)配套教材相關(guān)章節(jié)的內(nèi)容;二、預(yù)習(xí)本次實(shí)驗(yàn);【實(shí)驗(yàn)內(nèi)容】1.編寫一個(gè)程序?qū)和Y賦整數(shù)值(如 10,35)。使用if語(yǔ)句,比較兩個(gè)數(shù)值,輸出X是否大于Y。2、下面代碼的結(jié)果是什么?為什么會(huì)

17、是這樣的結(jié)果?為了輸出正確的結(jié)果,要如何修改?public class SwitchCase public static void main(String args) int i = 2;switch (i) case 1:case 2:System.out.println("The case is 4");case 3:case 4:System.out.println("The case is 4");case 5:System.out.println("The case is 5");break;default:System.o

18、ut.println("The case is Default!");break; 3、開發(fā)一個(gè)標(biāo)題為“FilpFlop”的游戲應(yīng)用程序。它從1計(jì)數(shù)到100,遇到3的倍數(shù)就替換為單詞“Filp”,5的倍數(shù)就替換為單詞“Flop”,既為3的倍數(shù),又為5的倍數(shù)則替換為單詞“FilpFlop”。4使用continue語(yǔ)句實(shí)現(xiàn):將100300之間的不能被3整除的數(shù)輸出。【總結(jié)與體會(huì)】實(shí)驗(yàn)四 類和對(duì)象的定義【實(shí)驗(yàn)?zāi)康摹? 理解對(duì)象和類,掌握類的定義及如何創(chuàng)建一個(gè)對(duì)象。2掌握構(gòu)造方法的運(yùn)用?!緦?shí)驗(yàn)準(zhǔn)備】一、復(fù)習(xí)配套教材相關(guān)章節(jié)的內(nèi)容;二、預(yù)習(xí)本次實(shí)驗(yàn);【實(shí)驗(yàn)內(nèi)容】1編程創(chuàng)建一個(gè)Box類

19、,在其中定義三個(gè)變量表示一個(gè)立方體的長(zhǎng)、寬和高;定義一個(gè)構(gòu)造方法對(duì)這三個(gè)變量進(jìn)行初始化,定義一個(gè)方法求立方體的體積;定義一個(gè)方法求立方體的表面積。在主程序中創(chuàng)建一個(gè)立方體的對(duì)象,輸出給定尺寸的立方體的體積和表面積。2、編寫一個(gè)程序,顯示水果的定購(gòu)行情。定義一個(gè)帶有參數(shù)的構(gòu)造方法,這些參數(shù)用于存放產(chǎn)品名,數(shù)量和價(jià)格。在主程序中輸出三種不同的水果?!究偨Y(jié)與體會(huì)】實(shí)驗(yàn)五 方法【實(shí)驗(yàn)?zāi)康摹?掌握方法的定義和參數(shù)傳遞。2. 掌握方法的重載;3通過(guò)以上內(nèi)容,理解Java 語(yǔ)言的編程規(guī)則?!緦?shí)驗(yàn)準(zhǔn)備】一、復(fù)習(xí)配套教材相關(guān)章節(jié)的內(nèi)容;二、預(yù)習(xí)本次實(shí)驗(yàn);【實(shí)驗(yàn)內(nèi)容】1、編寫一個(gè)學(xué)生類,封裝了學(xué)生的學(xué)號(hào)、姓名、成

20、績(jī)等信息。再編寫一個(gè)主類,主類中有一個(gè)打印學(xué)生信息的方法,該方法接受學(xué)生類對(duì)象為參數(shù),并依次輸出學(xué)生信息;main() 方法中生成學(xué)生類對(duì)象,并調(diào)用打印方法輸出學(xué)生信息。2、運(yùn)行以下兩個(gè)程序并分析輸出結(jié)果的不同,想一想是為什么?程序一:public class PassValuepublic static void main(String args)int x=5;change(x);System.out.println(x);public static void change(int x)X=3結(jié)果:程序二:public Calss PassRefint x;public static vo

21、id main(String args)PassRet obj=new PassRef();obj.x=5;change(obj);System.out.println(obj.x);public static void change(PassRef obj)obj.x=3;結(jié)果:分析原因:3、編寫一個(gè)Java程序,利用方法的重載來(lái)實(shí)現(xiàn)分別把兩個(gè)整型和浮點(diǎn)型數(shù)值相加,當(dāng)沒(méi)有傳遞參數(shù)時(shí),給出一個(gè)默認(rèn)值計(jì)算求和。注意此題應(yīng)寫出三個(gè)重載方法,即不帶參數(shù)的方法,帶兩個(gè)整型參數(shù)的方法和帶兩個(gè)浮點(diǎn)型參數(shù)的方法?!究偨Y(jié)與體會(huì)】實(shí)驗(yàn)六 數(shù)組【實(shí)驗(yàn)?zāi)康摹? 進(jìn)一步理解Java 程序語(yǔ)法結(jié)構(gòu),掌握順序結(jié)構(gòu)、選擇結(jié)

22、構(gòu)和循環(huán)結(jié)構(gòu)語(yǔ)法的程序設(shè)計(jì)方法。2掌握J(rèn)ava一維數(shù)組的定義、使用方法。3 通過(guò)以上內(nèi)容,掌握J(rèn)ava 語(yǔ)言的編程規(guī)則?!緦?shí)驗(yàn)準(zhǔn)備】一、復(fù)習(xí)配套教材相關(guān)章節(jié)的內(nèi)容;二、預(yù)習(xí)本次實(shí)驗(yàn);【實(shí)驗(yàn)內(nèi)容】1、編寫一個(gè)程序用于將10同學(xué)的成績(jī)保存在數(shù)組中,并計(jì)算這些同學(xué)的平均分和總成績(jī)。要求分別建立求平均值的方法和求總成績(jī)的方法。在主程序中創(chuàng)建10同學(xué)的成績(jī),并調(diào)用上述兩方法,輸出平均成績(jī)和總成績(jī)。public class Shiyan6_1 public static double getSum(double a) double sum=0; for(int i=0;i<a.length;i+)

23、sum+=ai; return sum; public static double getAvg(double a) double sum=0; for(int i=0;i<a.length;i+) sum+=ai; return sum/a.length; public static void main(String args) double a=60,60,60,60,60,60,60,60,60,60; System.out.println(getSum(a); System.out.println(getAvg(a); 2、編寫程序?qū)崿F(xiàn)對(duì)一個(gè)數(shù)組里的整型數(shù)據(jù)進(jìn)行排序。要求單獨(dú)實(shí)現(xiàn)

24、一個(gè)排序的方法,在主方法中調(diào)用該排序方法?!究偨Y(jié)與體會(huì)】實(shí)驗(yàn)七 繼承【實(shí)驗(yàn)?zāi)康摹?理解繼承的概念并學(xué)會(huì)使用。 2掌握this,super,static,final等關(guān)鍵字的使用方法。 3掌握方法的重載與方法的重寫的區(qū)別。實(shí)驗(yàn)準(zhǔn)備】一、復(fù)習(xí)配套教材相關(guān)章節(jié)的內(nèi)容;二、預(yù)習(xí)本次實(shí)驗(yàn);【實(shí)驗(yàn)內(nèi)容】1編譯下面程序,看報(bào)什么錯(cuò)誤,為什么?如何改正?class StaticError String mystring=“hello”; public static void main(String args) System.out.println(mystring); 2、編寫一個(gè)程序,用于創(chuàng)建一個(gè)名字Emp

25、loyee的父類和兩個(gè)名為Manager和Director的子類。Employee類包含3個(gè)屬性和一個(gè)方法,屬性為name,basic和address,方法名為show,用于顯示這些屬性值。Manager類有一個(gè)名為department的屬性,Directoro類有一個(gè)名為transport的附加屬性。創(chuàng)建Manager和Director的類并顯示其詳細(xì)信息。3、編寫一個(gè)程序,用于重寫父類Addition中名為add()的方法,該方法沒(méi)有實(shí)質(zhì)性的操作,僅輸出一條信息。add()方法在NumberAddition類中將兩個(gè)整數(shù)相加,而在TextConcatenation類則連接兩個(gè)String字

26、符串。創(chuàng)建主類測(cè)試兩個(gè)子類中的add()方法?!究偨Y(jié)與體會(huì)】實(shí)驗(yàn)八 抽象類和接口【實(shí)驗(yàn)?zāi)康摹? 理解抽象類和接口的概念;2 學(xué)會(huì)抽象類和接口的使用方法;【實(shí)驗(yàn)準(zhǔn)備】一、復(fù)習(xí)配套教材相關(guān)章節(jié)的內(nèi)容;二、預(yù)習(xí)本次實(shí)驗(yàn);【實(shí)驗(yàn)內(nèi)容】1、修改實(shí)驗(yàn)八第3題,理解抽象方法的使用。將父類中的add()方法定義為抽象方法。編寫一個(gè)程序,用于重寫父類Addition中名為add()的抽象方法。add()方法在NumberAddition類中將兩個(gè)整數(shù)相加,而在TextConcatenation類則連接兩個(gè)String字符串。創(chuàng)建主類測(cè)試兩個(gè)子類的add()方法。2、編寫一個(gè)接口,包含一個(gè)名為display()的

27、方法,和一個(gè)String類型的屬性name。創(chuàng)建First類,實(shí)現(xiàn)display()方法來(lái)輸出name+“你好!”,創(chuàng)建Second類,實(shí)現(xiàn)display()方法來(lái)輸出name字符串的長(zhǎng)度信息。并創(chuàng)建主類來(lái)驗(yàn)證?!究偨Y(jié)與體會(huì)】實(shí)驗(yàn)九 包和訪問(wèn)權(quán)限【實(shí)驗(yàn)?zāi)康摹?理解包的概念;2 學(xué)會(huì)包的創(chuàng)建和使用;3 理解四種訪問(wèn)權(quán)限之類的區(qū)別;【實(shí)驗(yàn)準(zhǔn)備】一、復(fù)習(xí)配套教材相關(guān)章節(jié)的內(nèi)容;二、預(yù)習(xí)本次實(shí)驗(yàn);【實(shí)驗(yàn)內(nèi)容】1學(xué)習(xí)類和成員的訪問(wèn)權(quán)限,編譯下面的程序,看看報(bào)什么錯(cuò),想想為什么?如何改正?package pack1;public class Samp1 protected double area(doub

28、le length,double width) return length*width; package pack2;import pack1.Samp1;public class samp2 public static void main(String args)double c1=1.3;double c2=2.3;Samp1 s1=new Samp1();System.out.println(s1.area(c1,c2); 2 編寫一個(gè)名為pac1的包,包括一個(gè)名為Com的類和一個(gè)名為disp()的方法,該方法可以比較兩個(gè)數(shù)的大小。重新定義一個(gè)包,在包中定義主類,引入包pac1并調(diào)用類中

29、的方法。【總結(jié)與體會(huì)】實(shí)驗(yàn)十 字符串【實(shí)驗(yàn)?zāi)康摹?掌握Math類的使用。 2掌握String類和StringBuffer類的使用 3掌握J(rèn)ava Application命令行參數(shù)的使用?!緦?shí)驗(yàn)準(zhǔn)備】一、復(fù)習(xí)配套教材相關(guān)章節(jié)的內(nèi)容;二、預(yù)習(xí)本次實(shí)驗(yàn);【實(shí)驗(yàn)內(nèi)容】1編譯運(yùn)行下面程序,寫出程序運(yùn)行結(jié)果,理解Math類的使用。public class MathSample public static void main(String args) /一些常見的數(shù)學(xué)函數(shù) System.out.println (Math.abs (-5.8); System.out.println (Math.ceil (

30、3.2); System.out.println (Math.floor (3.8); System.out.println (Math.round (3.8); System.out.println (Math.round (3.2); System.out.println (Math.min (3,2); System.out.println (Math.max (Math.PI,4); System.out.println ("e is:"+ Math.E); System.out.println ("is:"+Math.PI); System.o

31、ut.println(Math.random(); /字符串轉(zhuǎn)換成整數(shù)和符點(diǎn)數(shù)String num1="121"String num2="232.2" double sum=Integer.parseInt(num1)+Double.parseDouble(num2);System.out.println("兩數(shù)之和為"+sum);2編寫application程序,判斷一個(gè)字符串是否是回文(指順讀和倒讀都一樣的詞語(yǔ))。提示:利用StringBuffer類的reverse()方法。3 編寫application程序,從用戶輸入的三個(gè)整數(shù)

32、x,y,z中選出最大值和最小值;三個(gè)整數(shù)的輸入用main()方法的命令行參數(shù)來(lái)實(shí)現(xiàn)。【總結(jié)與體會(huì)】實(shí)驗(yàn)十一 集合類【實(shí)驗(yàn)?zāi)康摹?. 掌握集合類ArrayList對(duì)象,Vector對(duì)象的使用;2. 掌握HashMap對(duì)象的使用;【實(shí)驗(yàn)準(zhǔn)備】一、復(fù)習(xí)配套教材相關(guān)章節(jié)的內(nèi)容;二、預(yù)習(xí)本次實(shí)驗(yàn);【實(shí)驗(yàn)內(nèi)容】1、 編寫一個(gè)程序,使用ArrayList存儲(chǔ)客戶的郵件地址。地址中應(yīng)包話姓名、街道、市(縣)、?。ㄗ灾螀^(qū))、國(guó)家(地區(qū))。然后通過(guò)命令行輸出ArrayList中的內(nèi)容。2、創(chuàng)建一個(gè)HashMap對(duì)象,并在其中添加一些學(xué)員的姓名和他們的分?jǐn)?shù):張三,90分,李四,88分。然后從HashMap對(duì)象獲取這

33、兩個(gè)人的成績(jī)并輸出。接到把張三的成績(jī)改為99,再把他們的成績(jī)輸出?!究偨Y(jié)與體會(huì)】實(shí)驗(yàn)十二 異 常【實(shí)驗(yàn)?zāi)康摹?. 掌握異常的概念以及如何定義、拋出和捕捉處理異常。 2.掌握如何自定義一個(gè)異常類。 3掌握J(rèn)ava 捕獲和處理異常的結(jié)構(gòu)是怎樣的,try 語(yǔ)句如何嵌套, throw 語(yǔ)句的使用,及finally程序塊的作用.【實(shí)驗(yàn)準(zhǔn)備】一、復(fù)習(xí)配套教材相關(guān)章節(jié)的內(nèi)容;二、預(yù)習(xí)本次實(shí)驗(yàn);【實(shí)驗(yàn)內(nèi)容】1.編寫一個(gè)應(yīng)用程序捕獲ArithmeticException。當(dāng)除數(shù)為0時(shí)觸發(fā)該異常。2.編寫程序完成如下任務(wù):觸發(fā)并捕獲NumberFormatException和ArrayIndexOutOfBoun

34、dsException和IOException 3種異常。在主程序中初始化一數(shù)組,接受用戶通過(guò)命令行接受用戶輸入的參數(shù)作為讀取數(shù)的索引,并輸出對(duì)應(yīng)的數(shù)組元素值。如果用戶輸入的不是數(shù)字NuberFormatException應(yīng)該處理,如果用戶的輸入超出了數(shù)組大小,ArrayIndexOutOfBoundsException應(yīng)該處理這種情況。提示:接受用戶鍵盤輸入可以用如下語(yǔ)句:BufferedReader d=new BufferedReader(new InputStreamReader(System.in);/接受用戶鍵盤輸入到緩沖區(qū),該語(yǔ)句將拋出IOException;String lin

35、e=d.readLine()/從緩沖區(qū)d中讀取一行字符串。3.編譯運(yùn)行如下程序,寫出程序的運(yùn)行結(jié)果。理解trycatchfinally的使用。public class throwsExceptionpublic static void proc(int sel) throws ArrayIndexOutOfBoundsExceptionSystem.out.println(“In Situation ”+sel);if(sel=0)System.out.pritnln(“no Exception caugth”);return;else if(sel=1)int iArray=new int4

36、;iArray1=3;public static void main(String args)tryproc(0);proc(1);Catch(ArrayIndexOutOfBoundsException e)System.out.prtinln(“Catch”+e);finallySystem.out.prtinln(“in Proc finally”);【總結(jié)與體會(huì)】實(shí)驗(yàn)十三 I/O輸入輸出流【實(shí)驗(yàn)?zāi)康摹?對(duì)文件進(jìn)行字符、字節(jié)和字符串讀寫操作。 2復(fù)制文件。3查找有關(guān)文件和目錄的信息【實(shí)驗(yàn)準(zhǔn)備】一、復(fù)習(xí)配套教材相關(guān)章節(jié)的內(nèi)容;二、預(yù)習(xí)本次實(shí)驗(yàn);【實(shí)驗(yàn)內(nèi)容】1編寫一個(gè)程序,從名為test1.

37、txt的文件中讀取并顯示用戶名和密碼,如果源文件不存在,則顯示相應(yīng)的錯(cuò)誤信息。2編寫一個(gè)程序,接收從鍵盤輸入的數(shù)據(jù),并把從鍵盤輸入的內(nèi)容寫到input.txt文件中,如果輸入“quit”則程序結(jié)束?!究偨Y(jié)與體會(huì)】實(shí)驗(yàn)十四 swing (一)【實(shí)驗(yàn)?zāi)康摹?運(yùn)用javax.swing包中的基本組件進(jìn)行GUI編程。 2 運(yùn)用java編寫程序?qū)崿F(xiàn)事件處理。【實(shí)驗(yàn)準(zhǔn)備】一、復(fù)習(xí)配套教材相關(guān)章節(jié)的內(nèi)容;二、預(yù)習(xí)本次實(shí)驗(yàn);【實(shí)驗(yàn)內(nèi)容】1、 創(chuàng)建一個(gè)應(yīng)用程序,接受用戶輸入的用戶名和密碼。該應(yīng)用程序包含“確定”和“取消”兩個(gè)按鈕。單擊“確定”按鈕檢查文本框中輸入的用戶名和密碼(假設(shè)預(yù)設(shè)用戶名:abc,密碼:ab

38、c);“取消”按鈕是用來(lái)終止應(yīng)用程序。用戶名和密碼正確,則顯示“驗(yàn)證通過(guò)”,否則顯示“非法的用戶名或密碼”?!究偨Y(jié)與體會(huì)】實(shí)驗(yàn)十五 swing與GUI(二)【實(shí)驗(yàn)?zāi)康摹?運(yùn)用javax.swing包中的基本組件進(jìn)行GUI編程。 2 運(yùn)用java編寫程序?qū)崿F(xiàn)事件處理?!緦?shí)驗(yàn)準(zhǔn)備】一、復(fù)習(xí)配套教材相關(guān)章節(jié)的內(nèi)容;二、預(yù)習(xí)本次實(shí)驗(yàn);【實(shí)驗(yàn)內(nèi)容】1、 創(chuàng)建一圖形界面程序如下圖所示。練習(xí)各種swing組件的使用。當(dāng)點(diǎn)擊“驗(yàn)證”按鈕時(shí),對(duì)姓名文本框和地址文本區(qū)是否輸入進(jìn)行驗(yàn)證,如果沒(méi)有輸入則顯示相應(yīng)信息,驗(yàn)證通過(guò)則通過(guò)標(biāo)簽顯示用戶的輸入信息?!爸刂谩卑粹o用于清空用戶的前次輸入。【總結(jié)與體會(huì)】實(shí)驗(yàn)十六 sw

39、ing (三)【實(shí)驗(yàn)?zāi)康摹?運(yùn)用javax.swing包中的基本組件進(jìn)行GUI編程。 2 運(yùn)用java編寫程序?qū)崿F(xiàn)事件處理。3. 學(xué)會(huì)使用菜單編程。4掌握布局管理器的使用?!緦?shí)驗(yàn)準(zhǔn)備】一、復(fù)習(xí)配套教材相關(guān)章節(jié)的內(nèi)容;二、預(yù)習(xí)本次實(shí)驗(yàn);【實(shí)驗(yàn)內(nèi)容】1.編寫界形界面程序如下圖所示,窗口顯示兩上菜單,即“文件”和“幫助”,點(diǎn)擊“文件”菜單后出現(xiàn)文件對(duì)話話。2、創(chuàng)建應(yīng)用程序?qū)崿F(xiàn)如圖所示的計(jì)算器。并使用布局管理器。package welcome;import javax.swing.*;import java.awt.BorderLayout;import java.awt.GridLayout;imp

40、ort java.awt.Font;import javax.swing.BorderFactory;import java.awt.Color;import java.awt.event.ActionListener;import java.awt.event.ActionEvent;public class computer2 extends JFrame public computer2() try jbInit(); catch (Exception ex) ex.printStackTrace(); public static void main(String args) compu

41、ter2 computer2 = new computer2(); private void jbInit() throws Exception this.getContentPane().setLayout(borderLayout1); jTextField1.setFont(new java.awt.Font("宋體", Font.PLAIN, 25); jTextField1.setBorder(BorderFactory.createLoweredBevelBorder(); jTextField1.setHorizontalAlignment(SwingCons

42、tants.RIGHT); jPanel1.setLayout(gridLayout1); gridLayout1.setColumns(4); gridLayout1.setHgap(5); gridLayout1.setRows(4); gridLayout1.setVgap(5); jButton1.setText("7"); jButton2.setText("8"); jButton3.setText("/"); jButton4.setText("4"); jButton5.setText("

43、9"); jButton6.setText("5"); jButton7.setText("6"); jButton8.setText("3"); jButton9.setText("1"); jButton9.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) jButton9_actionPerformed(e); ); jButton10.setText("*"); j

44、Button11.setText("-"); jButton12.setText("0"); jButton13.setText("2"); jButton13.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) jButton13_actionPerformed(e); ); jButton14.setForeground(Color.red); jButton14.setText("C"); jBut

45、ton15.setText("="); jButton15.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) jButton15_actionPerformed(e); ); jButton16.setText("+"); jButton16.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) jButton16_actionPer

46、formed(e); ); borderLayout1.setVgap(15); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.getContentPane().add(jTextField1, java.awt.BorderLayout.NORTH); this.getContentPane().add(jPanel1, java.awt.BorderLayout.CENTER); jPanel1.add(jButton1); jPanel1.add(jButton2); jPanel1.add(jButton5); jP

47、anel1.add(jButton3); jPanel1.add(jButton4); jPanel1.add(jButton6); jPanel1.add(jButton7); jPanel1.add(jButton10); jPanel1.add(jButton9); jPanel1.add(jButton13); jPanel1.add(jButton8); jPanel1.add(jButton11); jPanel1.add(jButton12); jPanel1.add(jButton14); jPanel1.add(jButton15); jPanel1.add(jButton1

48、6); this.setBounds(300,200,300,200); this.setVisible(true); BorderLayout borderLayout1 = new BorderLayout(); JTextField jTextField1 = new JTextField(); JPanel jPanel1 = new JPanel(); GridLayout gridLayout1 = new GridLayout(); JButton jButton1 = new JButton(); JButton jButton2 = new JButton(); JButto

49、n jButton3 = new JButton(); JButton jButton4 = new JButton(); JButton jButton5 = new JButton(); JButton jButton6 = new JButton(); JButton jButton7 = new JButton(); JButton jButton8 = new JButton(); JButton jButton9 = new JButton(); JButton jButton10 = new JButton(); JButton jButton11 = new JButton(); JButton jButton12 = new JButton(); JButton jButton13 = new JButton(); JButton jButton14 = new JButton(); JButton jButton15 = new JButton(); JButton jButton16

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論