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

下載本文檔

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

文檔簡介

--36-第Ⅰ局部:試驗(yàn)指導(dǎo)試驗(yàn)1:Java開發(fā)環(huán)境J2SE一、試驗(yàn)?zāi)康膶W(xué)習(xí)從網(wǎng)絡(luò)上下載并安裝J2SE開發(fā)工具。學(xué)習(xí)編寫簡潔的JavaApplication程序.了解Java源代碼、字節(jié)碼文件,把握J(rèn)ava程序的編輯、編譯和運(yùn)行過程。二、試驗(yàn)任務(wù)從網(wǎng)絡(luò)上下載或從CD-ROM直接安裝J2SE開發(fā)工具,編寫簡潔的JavaApplication程序,編譯并運(yùn)行這個程序。三、試驗(yàn)內(nèi)容J2SE開發(fā)工具Sun公司為全部的java程序員供給了一套免費(fèi)的java開發(fā)和運(yùn)行環(huán)境,取名為Java2SDK,可以從“://java.sun/“://java.sun上進(jìn)展下載。安裝的時候可以選擇安裝到任意的硬盤驅(qū)動器上,例如安裝到C:\j2sdk1.4.1_03名目下。教師通過大屏幕演示J2SE的安裝過程,以及在Windows98/2023/2023下環(huán)境變量的設(shè)置方法。J2SE源代碼編輯工具EditPlus教師通過大屏幕演示EditPlus的安裝過程,以及在Windows98/2023/2023操作系統(tǒng)環(huán)境下編輯Java原程序的常用命令的用法。JavaApplication程序。創(chuàng)立一個名為HelloWorldAppjavaApplication程序,在屏幕上簡潔的顯示一句話“教師,你好!“。publicclassHelloWorldApp{publicstaticvoidmain(String[]args){System.out.println(“教師,你好!“);}}JavaApplication程序,寫出運(yùn)行結(jié)果。1:publicclassMyClass{2: privateintday;3: privateintmonth;4: privateintyear;5: publicMyClass{6: day=1;7: month=1;8: year=1900;9: }10: publicMyClass(intd,intm,inty){11: day=d;12: month=m;13: year=y;14: }15: publicvoiddisplay{16: System.out.println(day+“-“+month+“-“+year);17: }18: publicstaticvoidmain(Stringargs[]){19: MyClassm1=newMyClass;20: MyClassm2=newMyClass(25,12,2023);21: m1.display;22: m2.display;23: }24:}運(yùn)行結(jié)果:1-1-190025-12-2023試驗(yàn)2:Java根本數(shù)據(jù)類型一、試驗(yàn)?zāi)康陌盐誮avadoc文檔化工具的使用方法。把握J(rèn)ava語言轉(zhuǎn)義字符的功能。理解“值傳遞”的過程。二、試驗(yàn)任務(wù)利用javadoc文檔化工具,將給定的JavaApplication源代碼自動生成一系列說明文檔。輸入、運(yùn)行給定的JavaApplication程序,寫出運(yùn)行結(jié)果,以驗(yàn)證Java語言轉(zhuǎn)義字符的功能。依據(jù)要求編寫JavaApplication程序。三、試驗(yàn)內(nèi)容Javadoc文檔化工具的使用Java2SDK1.4.1中供給了一個文檔自動生成工具,可以簡化程序員編寫文檔的工作。可以使用javadoc.exe命令啟動Java文檔化工具,自動生成Java程序文檔。輸入下面給出的JavaApplication程序,利用javadoc命令生成該Java應(yīng)用程序的文檔,并使用掃瞄IE顯示生成的文檔頁面內(nèi)容。1:/*Java編程技術(shù)chapter3,CommentTest.java2: 版權(quán)全部:東方IT教育。3: zlg4: 日期:2023/07/015:*/6:/**7: 這是一個Java語言入門程序,定義類CommentTest。其中含有main方法,因此可以作為一8: 個應(yīng)用程序單獨(dú)執(zhí)行。其功能是在默認(rèn)的輸出設(shè)備上輸出字符串“Hi,你好!“。9:*/10: publicclassCommentTest{11: //主方法,作為Java應(yīng)用程序的默認(rèn)入口。12:13:14:15:

publicstaticvoidmain(Stringargs[]){System.out.println(“Hi,你好!“);//輸出“Hi,你好!“}}執(zhí)行javadocCommentTest.java指令,生成文件:CommentTest.html、package-frame.html、package-summary.html、package-tree.html、constant-values.html、overview-tree.html、index-all.html、deprecated-list.html、allclasses-frame.html、allclasses-noframe.html、index.html、help-doc.html。JavaApplication程序,寫出運(yùn)行結(jié)果。1:publicclassCharSample{2: publicstaticvoidmain(Stringargs[]){3: charch1=”\b”;4: charch2=”\t”;5: charch3=”\n”;6: charch4=”\r”;7: charch5=”\“”;8: charch6=”\””;9: charch7=”\\”;10: System.out.println(“沈陽“+ch1+“師范大學(xué)“);11: System.out.println(“沈陽“+ch2+“師范大學(xué)“);12: System.out.println(“沈陽“+ch3+“師范大學(xué)“);13: System.out.println(“沈陽“+ch4+ch3+“師范大學(xué)“);14: System.out.println(ch5+“沈陽“+“師范大學(xué)“+ch5);15: System.out.println(ch6+“沈陽“+“師范大學(xué)“+ch6);16: System.out.println(ch7+“沈陽“+“師范大學(xué)“+ch7);17: }18:}運(yùn)行結(jié)果:沈師范大學(xué)沈陽 師范大學(xué)沈陽師范大學(xué)沈陽師范大學(xué)“沈陽師范大學(xué)”‘沈陽師范大學(xué)’\沈陽師范大學(xué)\JavaApplication程序,寫出程序的運(yùn)行結(jié)果。定義一個Java類Point,用來描述平面直角坐標(biāo)系中點(diǎn)的坐標(biāo),該類應(yīng)當(dāng)能描述點(diǎn)的橫、縱坐標(biāo)信息及一些相關(guān)操作,包括獵取點(diǎn)的橫、縱坐標(biāo),修改點(diǎn)的坐標(biāo),顯示點(diǎn)的當(dāng)前位置等。定義一個測試類javaTestPoint類的對象并對其進(jìn)展有關(guān)的操作。classPoint{doublex,y;publicvoidsetXY(doublea,doubleb){x=a;y=b;}publicdoublegetX{returnx;}publicdoublegetY{returny;}publicvoiddisp{System.out.println(“點(diǎn)的當(dāng)前坐標(biāo)為:(“+x+“,“+y+“)“);}};publicclassjavaTest{publicstaticvoidmain(String[]args){Pointp1=newPoint;p1.disp;p1.setXY(3.2,5.6);p1.disp;}}運(yùn)行結(jié)果:點(diǎn)的當(dāng)前坐標(biāo)為:(0.0,0.0)點(diǎn)的當(dāng)前坐標(biāo)為:(3.2,5.6)試驗(yàn)3:Java流程把握一、試驗(yàn)?zāi)康陌盐認(rèn)ava運(yùn)算符的用法。把握表達(dá)式的使用和各種運(yùn)算符的優(yōu)先級把握。把握構(gòu)造化程序設(shè)計(jì)的根本構(gòu)造。二、試驗(yàn)任務(wù)輸入依據(jù)給定的JavaApplication程序,寫出運(yùn)行結(jié)果,并說明程序所完成的功能。依據(jù)要求編寫JavaApplication程序。三、試驗(yàn)內(nèi)容JavaApplication程序,寫出運(yùn)行結(jié)果,并說明程序的功能。1:importjava.io.*;2:publicclassfindNum{3: publicstaticvoidmain(Stringargs[]){4: Strings;5: doubled;6: inti;7: booleanb=false;8: do{9: try{10: System.out.println(“請輸入一個浮點(diǎn)數(shù):“);11: BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));12: s=br.readLine; //以字符串方式讀入13: i=s.indexOf(”.”); //找到小數(shù)點(diǎn)的位置14: d=Double.parseDouble(s); //將字符串轉(zhuǎn)換成浮點(diǎn)數(shù)15: System.out.println(d+“整數(shù)局部為:“+(long)d);16: if(i==-1) //假設(shè)沒有小數(shù)點(diǎn),則沒有小數(shù)局部17: System.out.println(d+“小數(shù)局部為:0.0“);18: else //假設(shè)有小數(shù)點(diǎn),則截取小數(shù)點(diǎn)后的字符串合成浮點(diǎn)數(shù)1: System.out.println(d+“+Double.parseDouble(((s.charAt(0)==”-”)“-“:““)+“0.“+s.substring(i+1,s.length)));20:21: }

b=false;22:23:catch(NumberFormatExceptionnfe){System.out.println(“輸入浮點(diǎn)數(shù)格式有誤。\n“);24:b=true;25:}26:catch(IOExceptionioe){27:b=false;28:}29:30:}while(b); //浮點(diǎn)格式錯誤時重輸入31:}//endofmain32:}//endofclass運(yùn)行結(jié)果:請輸入一個浮點(diǎn)數(shù):abc輸入浮點(diǎn)數(shù)格式有誤請輸入一個浮點(diǎn)數(shù):3.143.14的整數(shù)局部為:33.14的小數(shù)局部為:0.14程序功能:通過IO類從命令行讀入一個字符串,假設(shè)輸入的字符串為非數(shù)字字符串,則提示特別,要求重輸入。假設(shè)輸入的是一個沒有小數(shù)點(diǎn)的數(shù)字字符串〔即整數(shù)類型,則將其轉(zhuǎn)換為double最終完成將浮點(diǎn)數(shù)的小數(shù)位和整數(shù)位分別輸出。程序,輸出區(qū)間[200,300]上的全部素?cái)?shù),要求寫出程序的運(yùn)行結(jié)果。publicclassPrime{publicstaticvoidmain(String[]args){inti,j;outer:for(i=200;i<=300;i++){for(j=2;j<i-1;j++){if(i%j==0)continueouter;}System.out.print(i+“ “);}}}運(yùn)行結(jié)果:211 223 227 229 239 241 251 257 263 269 271 277 281 283 293試驗(yàn)4:Java類與對象一、試驗(yàn)?zāi)康陌盐認(rèn)ava類的繼承關(guān)系和派生方法。理解多態(tài)的概念與使用。把握接口的定義和使用。二、試驗(yàn)任務(wù)按要求編寫一個Java程序。按要求完善一個Java程序,編譯、運(yùn)行這個程序,并寫出運(yùn)行結(jié)果。三、試驗(yàn)內(nèi)容StudentStudentpublicStringtoString()Student類的對象的全部JavaApplicationStudent類的對象,并驗(yàn)證增加的功能。classStudent{privatelongstudentID;privateintclassID;privateStringname;privateStringsex;privateintage;publicStudent(longstudentID,intclassID,Stringname,Stringsex,intage){this.studentID=studentID;this.classID=classID;=name;this.sex=sex;this.age=age;}publiclonggetStudentID{returnstudentID;}publicintgetClassID{returnclassID;}publicStringgetName{returnname;}publicStringgetSex{returnsex;}publicintgetAge{returnage;}publicStringtoString{return“學(xué)號:“+getStudentID+“\n班號:“+getClassID+“\n姓名:“+getName+“\n性別:“+getSex+“\n年齡:“+getAge;}}publicclassStudentDemo{publicstaticvoidmain(String[]args){Students1=newStudent(90221,2,“Tom“,“male“,20);System.out.println(s1.toString);}}運(yùn)行結(jié)果:學(xué)號:90221班號:2姓名:Tom性別:male年齡:20試驗(yàn)5:Java繼承與多態(tài)一、試驗(yàn)?zāi)康陌盐認(rèn)ava類的定義和使用方法。把握對象的聲明和使用。構(gòu)造函數(shù)的概念和使用。把握類及其成員的訪問把握符的使用。把握包的概念和使用。二、試驗(yàn)任務(wù)輸入依據(jù)給定的JavaApplication程序,寫出運(yùn)行結(jié)果。依據(jù)要求編寫JavaApplication程序。三、試驗(yàn)內(nèi)容閱讀如下所示的3個Java類的定義,分析它們之間的關(guān)系,寫出運(yùn)行結(jié)果。1:classSuperClass{2: intx;3: SuperClass{4: x=3;5: System.out.println(“inSuperClass:x=“+x);6: }7: voiddoSomething{8: System.out.println(“inSuperClass.doSomething“);9:}11:}1:classSubClassextendsSuperClass{2: intx;3: SubClass{4: super; //調(diào)用父類的構(gòu)造方法5: x=5; //super()要放在方法中的第一句6: System.out.println(“inSubClass:x=“+x);7:8:9:10:11:12:14:}

}voiddoSomething(){super.doSomething();//調(diào)用父類的方法System.out.println(“inSubClass.doSomething“);System.out.println(“super.x=“+super.x+“sub.x=“+x);}1:publicclassInheritance{2: publicstaticvoidmain(Stringargs[]){3: SubClasssubC=newSubClass;4: subC.doSomething;5: }6:}運(yùn)行結(jié)果:inSuperClass:x=3inSubClass:x=5inSuperClass.doSomethinginSubClass.doSomethingsuper.x=3 sub.x=5假定依據(jù)學(xué)生的3門學(xué)位課程的分?jǐn)?shù)打算其是否可以拿到學(xué)位,對于本科生,假設(shè)80分才能夠通Java類的設(shè)計(jì):設(shè)計(jì)一個基類Student描述學(xué)生的共同特征。設(shè)計(jì)一個描述本科生的類Undergraduate,該類繼承并擴(kuò)展Student類。設(shè)計(jì)一個描述爭論生的類Graduate,該類繼承并擴(kuò)展Student類。設(shè)計(jì)一個測試類StudentDemo,分別創(chuàng)立本科生和爭論生這兩個類的對象,并輸出相關(guān)信息。classStudent{privateStringname;privateintclassA,classB,classC;publicStudent(Stringname,intclassA,intclassB,intclassC){=name;this.classA=classA;this.classB=classB;this.classC=classC;}publicStringgetName{returnname;}publicintgetAverage{return(classA+classB+classC)/3;}}classUnderGraduateextendsStudent{publicUnderGraduate(Stringname,intclassA,intclassB,intclassC){super(name,classA,classB,classC);}publicvoidisPass{if(getAverage>=60)System.out.println(本科生“+getName+“+getAverage+“可以拿到學(xué)士學(xué)位?!?;else士學(xué)位?!?;}

System.out.println(本科生“+getName+“+getAverage+“不能拿到學(xué)}classGraduateextendsStudent{publicGraduate(Stringname,intclassA,intclassB,intclassC){super(name,classA,classB,classC);}publicvoidisPass{if(getAverage>=80)System.out.println(爭論生“+getName+“+getAverage+“可以拿到碩士學(xué)位?!?;else士學(xué)位。“);}

System.out.println(爭論生“+getName+“+getAverage+“不能拿到碩}publicclassStudentDemo{publicstaticvoidmain(String[]args){UnderGraduates1=newUnderGraduate(“Tom“,55,75,81);Graduates2=newGraduate(“Mary“,72,81,68);s1.isPass;s2.isPass;}}運(yùn)行結(jié)果:Tom的三科平均分為:70,可以拿到學(xué)士學(xué)位。Mary的三科平均分為:73,不能拿到碩士學(xué)位。假定要為某個公司編寫雇員工資支付程序,這個公司有各種類型的雇員〔不同類型的雇員按不同的方式支付工資:每月獲得一份固定的工資〔Salesman〕——在根本工資的根底上每月還有銷售提成。JavaApplication程序,〔提示:應(yīng)設(shè)計(jì)一個雇員類〔Employee〕描述全部雇員的共圖特性,這ComputeSalary(),使得可以通過這個類計(jì)算全部雇員的工資。經(jīng)理、銷售人員和一般工人對應(yīng)的類都應(yīng)當(dāng)繼承這個類,并重定義計(jì)算工資的〕abstractclassEmployee{privateStringname;publicEmployee(Stringname){=name;}publicStringgetName{returnname;}publicabstractdoublecomputeSalary;}classManagerextendsEmployee{privatedoublemonthSalary;publicManager(Stringname,doublemonthSalary){super(name);this.monthSalary=monthSalary;}publicdoublecomputeSalary{returnmonthSalary;}}classSalesmanextendsEmployee{privatedoublebaseSalary;privatedoublecommision;privateintqualtities;publicSalesman(Stringname,doublebaseSalary,doublecommision,intqualtities){super(name);this.baseSalary=baseSalary;thismision=commision;this.qualtities=qualtities;}publicdoublecomputeSalary{returnbaseSalary+commision*qualtities;}}classWorkerextendsEmployee{privatedoubledailySalary;privateintdays;publicWorker(Stringname,doubledailySalary,intdays){super(name);this.dailySalary=dailySalary;this.days=days;}publicdoublecomputeSalary{returndailySalary*days;}}publicclassEmployeeDemo{publicstaticvoidmain(Stringargs[]){Managere1=newManager(“張三“,10000);Salesmane2=newSalesman(“李四“,2023,50.4,63);Workere3=newWorker(“王五“,79.5,28);System.out.println(“經(jīng)理“+e1.getName+“的月工資為:“+e1puteSalary);System.out.println(“銷售人員“+e2.getName+“的月工資為:“+e2puteSalary);System.out.println(“工人“+e3.getName+“的月工資為:“+e3puteSalary);}}運(yùn)行結(jié)果:經(jīng)理張三的月工資為:10000.0銷售人員李四的月工資為:5175.2工人王五的月工資為:2226.0試驗(yàn)6:Java把握臺程序設(shè)計(jì)一、試驗(yàn)?zāi)康陌盐認(rèn)ava命令行參數(shù)的使用方法。把握J(rèn)ava程序與文件之間的根本輸入輸出操作二、試驗(yàn)任務(wù)輸入依據(jù)給定的JavaApplication程序,寫出運(yùn)行結(jié)果。編寫JavaApplication程序,實(shí)現(xiàn)文件輸入功能。編寫JavaApplication程序,實(shí)現(xiàn)文件輸出功能。三、試驗(yàn)內(nèi)容JavaApplication程序,用文字簡述運(yùn)行結(jié)果。1:importjava.util.Properties;2:importjava.util.Enumeration;3:publicclassTestp{4: publicstaticvoidmain(String[]args){5: Propertiesps=System.getProperties;6: Enumerationpn=pertyNames;7: while(pn.hasMoreElements){8: StringpName=(String)pn.nextElement;9: StringpValue=ps.getProperty(pName);10:System.out.println(pName+“ “+pValue);11:}12:13:}}JavaApplication程序,實(shí)現(xiàn)讀取并輸出指定文件的內(nèi)容的功能。importjava.io.*;publicclassReadFile{publicstaticvoidmain(String[]args)throwsIOException{BufferedReaderbr=newBufferedReader(newFileReader(“ReadFile.java“));Strings=br.readLine;while(s!=null){System.out.println(s);s=br.readLine;}br.close;}}程序,實(shí)現(xiàn)接收鍵盤輸入的數(shù)據(jù),并寫入到指定文件中的功能。importjava.io.*;publicclassWriteFile2{publicstaticvoidmain(String[]args)throwsIOException{BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));BufferedWriterbw=newBufferedWriter(newFileWriter(“tt.txt“));Strings=br.readLine;while(!s.equals(“exit“)){bw.write(s);bw.newLine;s=br.readLine;}br.close;bw.close;}}7:數(shù)組與字符串一、試驗(yàn)?zāi)康陌盐绽肕ath類實(shí)現(xiàn)根本數(shù)學(xué)運(yùn)算的方法。把握數(shù)組與字符串概念與使用。二、試驗(yàn)任務(wù)輸入依據(jù)給定的JavaApplication程序,寫出運(yùn)行結(jié)果。依據(jù)要求編寫JavaApplication程序。三、試驗(yàn)內(nèi)容JavaApplication程序,寫出運(yùn)行結(jié)果,并說明程序的功能。1:publicclasstestMath{2: publicstaticvoidmain(Stringargs[]){3: finalintNUMBER=100;4: intcount=10;5: intrandomNum=0;6: intprobability[]=newint[6];7: for(inti=0;i<6;i++){8: probability[i]=0;9: }10: for(inti=0;i<NUMBER;i++){11: randomNum=(int)(Math.random*6)+1;12: probability[randomNum-1]++;13: System.out.print(randomNum+“\t“);14: if(i%count==9)15: System.out.println;16: }17: for(inti=0;i<6;i++){18: System.out.println(“\n“+(i+1)+“:\t“+probability[i]);19: }20: }21:}JavaApplication程序,實(shí)現(xiàn)如下的設(shè)計(jì)目標(biāo):程序運(yùn)行時自動產(chǎn)生1~100數(shù),并供給“重開頭”和“退出”功能。試驗(yàn)8:Java高級I/O流程序設(shè)計(jì)一、試驗(yàn)?zāi)康陌盐認(rèn)avaI/O根本原理。把握InputStream、OutputStream抽象類的根本使用方法。把握FileInputStream、FileOutputStream、DataInputStream、DataOutputStream抽象類的根本使用方法。二、試驗(yàn)任務(wù)閱讀給定的JavaApplication程序,按要求答復(fù)以下問題并寫出運(yùn)行結(jié)果。按要求編寫一個JavaApplication程序,并編譯、運(yùn)行這個程序。三、試驗(yàn)內(nèi)容JavaApplication程序,運(yùn)行該程序,說明程序的功能。1:importjava.io.*;2:publicclassCopyFile{3: publicstaticvoidmain(String[]args){4: try{5: FileInputStreamfis=newFileInputStream(“CopyFile.java“);6: FileOutputStreamfos=newFileOutputStream(“temp.txt“);7: intread=fis.read;8: while(read!=-1){9: fos.write(read);10: read=fis.read;11: }12: fis.close;13: fos.close;14: }15: catch(IOExceptione){16: System.out.println(e);17: }18: }19:}其功能是完成文件的復(fù)制:通過字節(jié)流從“copyFile.java”文件中讀取數(shù)據(jù)并寫入到“temp.txt”文copy功能。程序,實(shí)現(xiàn)如下的設(shè)計(jì)功能:運(yùn)行該程序可以列出當(dāng)前名目下的文件。importjava.io.*;publicclassFileList2{publicstaticvoidmain(String[]args){Filedir=newFile(“.“);Filefiles[]=dir.listFiles;System.out.println(dir);for(inti=0;i<files.length;i++){if(files[i].isFile)System.out.println(“\t“+files[i].getName);else}}}

System.out.println(“<DIR>\t“+files[i].getName);9:JavaGUI程序設(shè)計(jì)(1)一、試驗(yàn)?zāi)康牧私釰ava系統(tǒng)圖形用戶界面的工作原理和界面設(shè)計(jì)步驟。把握圖形用戶界面的各種常用組件的使用方法。把握圖形用戶界面各種布局策略的設(shè)計(jì)與使用。二、試驗(yàn)任務(wù)閱讀給定的JavaApplication程序,按要求答復(fù)以下問題并寫出運(yùn)行結(jié)果。按要求編寫一個JavaApplication程序,并編譯、運(yùn)行這個程序。三、試驗(yàn)內(nèi)容JavaApplication程序,運(yùn)行該程序,說明程序的功能。1:importjava.awt.*;2:publicclassTestFlowLayout{3: publicstaticvoidmain(Stringargs[]){4: Framef=newFrame(“FlowLayout“);5: Buttonbutton1=newButton(“確定“);6: Buttonbutton2=newButton(“翻開“);7: Buttonbutton3=newButton(“關(guān)閉“);8: Buttonbutton4=newButton(“取消“);9: f.setLayout(newFlowLayout);10: f.add(button1);11: f.add(button2);12: f.add(button3);13: f.add(button4);14: f.setSize(100,100);15: f.setVisible(true);16: }17:}100*100f的尺寸被重置后,其FlowLayout型的布局也會隨之發(fā)生變化,各按鈕的大小不變,但其相對位置會變化。JavaApplication程序,該程序運(yùn)行的運(yùn)行結(jié)果如下所示。importjava.awt.*;publicclassBorderLayoutWindowextendsFrame{publicBorderLayoutWindow{setLayout(newBorderLayout);add(newButton(“BN“),“North“);add(newButton(“BS“),“South“);add(newButton(“BE“),“East“);add(newButton(“BW“),“West“);add(newButton(“BC“),“Center“);}publicstaticvoidmain(Stringargs[]){BorderLayoutWindowwindow=newBorderLayoutWindow;window.setTitle(“BorderWindowApplication“);window.pack;window.setVisible(true);}}JavaApplication程序,該程序運(yùn)行的運(yùn)行結(jié)果如下所示。importjava.awt.*;publicclassGridLayoutWindowextendsFrame{publicGridLayoutWindow{setLayout(newGridLayout(3,2));add(newButton(“b1“));add(newButton(“b2“));add(newButton(“b3“));add(newButton(“b4“));add(newButton(“b5“));add(newButton(“b6“));}publicstaticvoidmain(Stringargs[]){GridLayoutWindowwindow=newGridLayoutWindow;window.setTitle(“GridWindowApplication“);window.pack;window.setVisible(true);}}10:JavaGUI程序設(shè)計(jì)(2)一、試驗(yàn)?zāi)康牧私鈭D形用戶界面的大事響應(yīng)機(jī)制。把握鼠標(biāo)大事編程方法。把握AWTColorFont類的使用方法。二、試驗(yàn)任務(wù)閱讀給定的JavaApplication程序,按要求答復(fù)以下問題并寫出運(yùn)行結(jié)果。按要求編寫一個JavaApplication程序,并編譯、運(yùn)行這個程序。三、試驗(yàn)內(nèi)容JavaApplication程序,運(yùn)行該程序,說明程序的執(zhí)行過程。1:importjava.awt.*;2:importjava.awt.event.*;3:publicclassTestActionEvent{4: publicstaticvoidmain(Stringargs[]){5: Framef=newFrame(“Test“);6: Buttonb=newButton(“PressMe!“);7: Monitorbh=newMonitor;8: b.addActionListener(bh);9: f.add(b,BorderLayout.CENTER);10: f.pack;11: f.setVisible(true);12: }13:}1:classMonitorimplementsActionListener{2: publicvoidactionPerformed(ActionEvente){3: System.out.println(“abuttonhasbeenpressed“);4: }5:}執(zhí)行過程:創(chuàng)立一個框架f,其標(biāo)題為Test。在框架中添加了一個標(biāo)簽為“PressMe”的按鈕b。為按鈕b注冊監(jiān)聽器bh,監(jiān)聽ActionEvent大事。當(dāng)鼠標(biāo)單擊框架中的按鈕b時,會觸發(fā)ActionEvent大事,執(zhí)行大事處理器actionPerformed(ActionEventeabuttonhasbeenpresseJavaApplication程序,該程序運(yùn)行的運(yùn)行結(jié)果如下所示。importjava.awt.*;publicclassMenuTest{publicstaticvoidmain(Stringargs[]){Framefr=newFrame(“Menu“);MenuBarmb=newMenuBar;fr.setMenuBar(mb);Menum1=newMenu(“File“);Menum2=newMenu(“Edit“);Menum3=newMenu(“Help“);mb.add(m1);mb.add(m2);mb.setHelpMenu(m3);MenuItemm11=newMenuItem(“New“);MenuItemm12=newMenuItem(“Save“);MenuItemm13=newMenuItem(“Load“);MenuItemm14=newMenuItem(“Quit“);m1.add(m11);m1.add(m12);m1.add(m13);m1.addSeparator;m1.add(m14);fr.pack;fr.setVisible(true);}}JavaApplication程序,該程序運(yùn)行的運(yùn)行結(jié)果如下所示。importjava.awt.*;publicclassMenuTest{publicstaticvoidmain(Stringargs[]){Framefr=newFrame(“Menu“);MenuBarmb=newMenuBar;fr.setMenuBar(mb);Menum1=newMenu(“File“);Menum2=newMenu(“Format“);Menum3=newMenu(“Help“);Menum4=newMenu(“進(jìn)制“);mb.add(m1);mb.add(m2);mb.setHelpMenu(m3);MenuItemm21=newMenuItem(“中文“);MenuItemm41=newMenuItem(“二進(jìn)制“);MenuItemm42=newMenuItem(“八進(jìn)制“);MenuItemm43=newMenuItem(“十進(jìn)制“);m2.add(m21);m2.add(m4);m4.add(m41);m4.add(m42);m4.add(m43);fr.pack;fr.setVisible(true);}}試驗(yàn)11:Java多線程一、試驗(yàn)?zāi)康牧私饩€程的概念。學(xué)習(xí)簡潔的多線程編程。二、試驗(yàn)任務(wù)閱讀給定的JavaApplication程序,按要求答復(fù)以下問題并寫出運(yùn)行結(jié)果。按要求編寫一個JavaApplication程序,并編譯、運(yùn)行這個程序。三、試驗(yàn)內(nèi)容JavaApplication程序,運(yùn)行該程序,并簡要分析程序的運(yùn)行結(jié)果。1:classSimpleThreadextendsThread{2: publicSimpleThread(Stringstr){3: super(str);//調(diào)用其父類的構(gòu)造方法4: }5: publicvoidrun{//run方法6: for(inti=0;i<10;i++){7: System.out.println(i+““+getName);8: //打印次數(shù)和線程的名字9: try{10: sleep((int)(Math.random*1000));11: //線程睡眠,把把握權(quán)交出去12: }13: catch(InterruptedExceptione){}14: }15:16:17:18:}

System.out.println(“DONE!“+getName);//線程執(zhí)行完畢}1:publicclassTwoThreadsTest{2: publicstaticvoidmain(Stringargs[]){3: newSimpleThread(“First“).start;4: //第一個線程的名字為First5: newSimpleThread(“Second“).start;6: //其次個線程的名字為Second7: }8:}Test.java的程序源代碼,運(yùn)行該程序,并簡要分析程序的運(yùn)行結(jié)果。試驗(yàn)12:Java網(wǎng)絡(luò)程序設(shè)計(jì)一、試驗(yàn)?zāi)康陌盐站W(wǎng)絡(luò)編程的根本概念。把握包中常用網(wǎng)絡(luò)編程工具類的功能和使用。把握Socket編程的根本方法和步驟。二、試驗(yàn)任務(wù)閱讀給定的JavaApplication程序,按要求答復(fù)以下問題并寫出運(yùn)行結(jié)果。三、試驗(yàn)內(nèi)容JavaApplication程序,運(yùn)行該程序,寫出程序的運(yùn)行結(jié)果。1:/*FileName:ParseURL.java2:*這是一個簡潔的關(guān)于URL的實(shí)例3:*該實(shí)例的功能是解析命令行參數(shù)4:*中指定的URL地址5:*/6:.*;7:importjava.io.*;8:publicclassParseURL{9: publicstaticvoidmain(String[]args)throwsException{10: URLaURL=newURL(“://localhost:200/text.txt#BOTTOM“);11: System.out.println(aURL);12: System.out.println(“protocol=“+aURL.getProtocol);13: System.out.println(“host=“+aURL.getHost);14: System.out.println(“filename=“+aURL.getFile);15: System.out.println(“port=“+aURL.getPort);16:17: 18:}

System.out.println(“ref=“+aURL.getRef);下面給出的Java源代碼分別是效勞器端程序和客戶端程序,兩個程序之間可以進(jìn)展JavaApplication程序,然后分別運(yùn)行這兩個程序,并寫出程序的運(yùn)行結(jié)果〔提示:首先在一個MS-DOS窗口運(yùn)行效勞器端程序,然后在另一個MS-DOS窗口再運(yùn)行客戶端程序。1:/*FileName:TCPSingleUserServer.java2:*這是一個簡潔的基于TCP連接效勞程序3:*該效勞程序的功能格外簡潔,只是簡潔4:*的顯示并且向客戶端回送客戶端發(fā)送來5:*的信息,直到客戶端發(fā)送完畢標(biāo)記END6:*/7:importjava.io.*;8:.*;9:publicclassTCPSingleUserServer{10: //設(shè)置效勞器的端口號,它應(yīng)當(dāng)大于102411: publicstaticfinalintPORT=8080;12: publicstaticvoidmain(String[]args)throwsIOException{13: ServerSocketserver=newServerSocket(PORT);14: System.out.println(“Started:“+server);15: try{16: //等待承受用戶連接17:18:19:20:21:

Socketsocket=server.accept;try{System.out.println(“Connectionaccepted:“+socket);BufferedReaderin=newBufferedReader(newInputStreamReader(socket.getInputStream));PrintWriterout=newPrintWriter(newBufferedWriter(newOutputStreamWriter(socket.getOutputStream)),true);22:23:24:25:26:27:

while(true){Stringstr=in.readLine;if(str.equals(“END“))break;System.out.println(“Echoing:“+str);out.println(str);}28:}29:finally{30:System.out.println(“closing...“);31:socket.close;32:}33:}34:finally{35:server.close;36:}37:39:}}1:/*FileName:TCPSingleUserClient.java2:*這是一個簡潔的基于TCP連接客戶程序3:*該客戶程序的功能格外簡潔,只是簡潔4:*向效勞器發(fā)送消息,并且接收從效勞器5:*發(fā)送回來的消息,將它在屏幕上顯示6:*/7:.*;8:importjava.io.*;9:publicclassTCPSingleUserClient{10: publicstaticvoidmain(String[]args)throwsIOException{11: //getByNamenull作為參數(shù)12: //來指定本地效勞器的地址13:14:15:16:17:18:19:20:21:22:23:24:25:26:27:28:29:30:31:32:

InetAddressaddr=InetAddress.getByName(null);//同樣的,也可以使用如下的代碼來實(shí)現(xiàn)同樣的功能//InetAddressaddr=InetAddress.getByName(““);//InetAddressaddr=InetAddress.getByName(“l(fā)ocalhost“);System.out.println(“addr=“+addr);Socketsocket=newSocket(addr,TCPSingleUserServer.PORT);try{System.out.println(“socket=“+socket);BufferedReaderin=newBufferedReader(newInputStreamReader(socket.getInputStream));PrintWriterout=newPrintWriter(newBufferedWriter(newOutputStreamWriter(socket.getOutputStream)),true);for(inti=0;i<10;i++){out.println(“SendingLine“+i+“ “);Stringstr=in.readLine;System.out.println(str);}out.println(“END“);}finally{System.out.println(“closing.“);socket.close;33: }34: }35:}13:JavaApplet程序設(shè)計(jì)一、試驗(yàn)?zāi)康牧私釧pplet程序的運(yùn)行

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論