Java基礎(chǔ)教程(第3版)習(xí)題答案_第1頁
Java基礎(chǔ)教程(第3版)習(xí)題答案_第2頁
Java基礎(chǔ)教程(第3版)習(xí)題答案_第3頁
Java基礎(chǔ)教程(第3版)習(xí)題答案_第4頁
Java基礎(chǔ)教程(第3版)習(xí)題答案_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、(z=+z);(z=+z);部分習(xí)題答案答案】答案見教材V略。第二章請說明注釋的作用?!敬鸢浮看鸢敢娊滩腣略。判斷下列那些是標(biāo)識符?3classbyte?roomBeijing因為標(biāo)識符不能已數(shù)字開始,也不能是保留關(guān)鍵字(如byte),beijing【答案】因為標(biāo)識符不能已數(shù)字開始,也不能是保留關(guān)鍵字(如byte),請指出下列聲明字符變量(1)charch=A;(2)charch=u0020;(3)charch=88;(4)charch=ab;(5)charch=A;答案】(4)錯,因為關(guān)鍵字ch的語句是否存在錯誤?如果有,請改正。char是用于聲明字符變量,不可聲明字符串變量。如果intx=

2、1,y=-2,n=10;那么,表達(dá)式x+y+(-n)*(xy&x0?(x+1):y)的值是什么類型?結(jié)果是多少?【答案】int型,值為17。如果intk=1,那么H+k的類型是什么?下面語句是否存在差錯?如果有,請改正。intk=1;charch1,ch2;ch1=H+k;ch2=98;【答案】H+k的類型為int型。有錯。H+k為int型,chi為char型,將高精度賦給低精度類型時必須實行強(qiáng)制轉(zhuǎn)換。請指出下面程序在編譯時是否會出現(xiàn)錯誤。如果有,請改正。publicclassdoubleTointExamplepublicstaticvoidmain(Stringargs)inta;doub

3、leb=1,c=2;a=(int)(b+c);System.out.println(a=+a);【答案】無錯誤。輸出結(jié)果:a=3請指出執(zhí)行完下面程序后x、y和z的輸出值是多少?請上機(jī)驗證。publicclassdoubleTointExamplepublicstaticvoidmain(Stringargs)intx,y,z;x=1;y=2;z=(x+y3?x+:+y);System.out.println(x=+x);System.out.println(y=+y);System.out.println【答案】x=1y=3z=3請指出下面程序片段輸出的結(jié)果是什么。inti=1,j=10;do

4、if(i+-j)break;while(i5);System.out.println(“i=”+”+“j=”+j);【答案】i=5j=6請分別用if-else語句和switch語句編寫實現(xiàn)下列功能的程序。某同學(xué)某門課的成績可能的結(jié)果為1,2,3,4,5。當(dāng)成績?yōu)?時請輸出不及格;成績?yōu)?時請輸出及格;成績?yōu)?時請輸出中等;成績?yōu)?時請輸出良好;成績?yōu)?時請輸出優(yōu)秀。【答案】/*if-else描述程序*/publicclassxt020901publicstaticvoidmain(Stringargs)intscore=4;if(score=1)System.out.println(不及格);

5、elseif(score=2)System.out.println(及格);elseif(score=3)System.out.println(中等);elseif(score=4)System.out.println(良好);elseSystem.out.println(優(yōu)秀);/*switch描述程序*/publicclassxt020902publicstaticvoidmain(Stringargs)intscore=4;switch(score)case1:System.out.println(不及格);break;case2:System.out.println(及格);break

6、;case3:System.out.println(中等break;);case4:System.out.println(良好);break;case5:System.out.println(優(yōu)秀);break;請編寫輸出乘法口訣表的程序。乘法口訣表的部分內(nèi)容如下:1*1=11*2=22*2=31*3=32*3=63*3=91*4=42*4=83*4=124*4=16publicclassxt0210publicstaticvoidmain(Stringargs)finaldoublePI=3.141592654;doublearea,r;area=PI*r*r;System.out.prin

7、tln(面積=”+area);【答案】publicclassxt0210publicstaticvoidmain(Stringargs)inti,j;inti,j;inti,j;inti,j;for(i=1;iv=9;i+)for(j=1;j=i;j+)System.out.print(j+*+i+=+i*j+);System.out.printlnO;請編寫程序?qū)崿F(xiàn)如下效果圖。DGFJNKQOST【答案】publicclassxt0211publicstaticvoidmain(Stringargs)inti,j,k,num;charch;num=A-1;for(i=1;i=4;i+)for

8、(k=1;k=4-i;k+)System.out.print();for(j=1;j=i;j+)num=num+1;ch=(char)num;System.out.print(ch+”);System.out.println();for(i=1;i=4;i+)for(k=1;k=i-1;k+)System.out.print();for(j=1;j=5-i;j+)sum=sum+i;sum=sum+i;sum=sum+i;sum=sum+i;num=num+1;ch=(char)num;System.out.print(ch+);System.out.println();12.分別利用【答案】

9、/*for語句實現(xiàn)*/publicclassxt021201publicstaticvoidmain(Stringargs)inti,n=100;longsum=0;for(i=1;i=n;i+)for語句While語句以及dowhile語句編寫一個求和程序(即sum=1+2+3+n)。sum=sum+i;System.out.println(sum1:n=+sum);語句實現(xiàn)*/*whilepublicclassxt021202publicstaticvoidmain(Stringargs)inti,n=100;longsum=0;i=1;while(i=n)sum=sum+i;i=i+1;

10、System.out.println(sum1:n=+sum);/*dowhile語句實現(xiàn)*/publicclassxt021203publicstaticvoidmain(Stringargs)inti,n=100;longsum=0;i=1;docase11:case11:case11:case11:if(bif(b=true)count+;System.out.println(i);i=i+1;while(ieps)x0=x;x=(-2*x0*x0*x0+4*x0*x0+6)/3;14、題目判斷3-1000之間有多少個素數(shù),并輸出所有素數(shù)。程序分析:判斷素數(shù)的方法:用一個數(shù)分別去除此2到

11、sqrt(這個數(shù)),如果能被整除,則表明數(shù)不是素數(shù),反之是素數(shù)。publicclassxt0213publicstaticvoidmain(Stringargs)intcount=0;for(inti=3;i=1000;i+=2)booleanb=false;for(intj=2;j=Math.sqrt(i);j+)if(i%j=0)b=false;break;elseb=true;System.out.println(素數(shù)個數(shù)是:+count);15、輸入某年某月某日,判斷這一天是這一年的第幾天?【參考答案】importjava.util.*;publicclassxt0214publics

12、taticvoidmain(Stringargs)intyear,month,day;intdays=0;intd=0;inte;InputDatadata0=newInputData();doe=0;);System.out.print(輸入年:year=data0.inputInt(););System.out.print(輸入月:month=data0.inputInt(););System.out.print(輸入天:idafy(=yeadarta00.in|putmoInntth();12|daySystem.out.println(輸入錯誤,請重新輸入!31)Jwhile(e=1)

13、;for(inti=1;i50)v=9;p=v+u;要求:指出錯誤,說明錯誤原因,并改正。【答案】錯誤原因:法產(chǎn)生的,改正措施:B.java內(nèi)容如下:classAintx,y;Java語言規(guī)定,任何變量在使用之前,當(dāng)u0)System.out.print(ch);output(ch,k-1);voidshow(charch,intm,intn)if(n0)output(,m);output(ch,n);System.out.println();show(ch,m+2,nshow(ch,m+2,n-4);publicclassJe030515publicstaticvoidmain(String

14、args)RecursionApp2obj=newRecursionApp2();obj.show(#,4,19);定義滿足以下要求的復(fù)數(shù)類Complex:1)復(fù)數(shù)類Complex的屬性有:realPart:int型,代表復(fù)數(shù)的實數(shù)部分imagePart:int型,代表復(fù)數(shù)的虛數(shù)部分2)復(fù)數(shù)類Complex的方法有:Complex():構(gòu)造函數(shù),將復(fù)數(shù)的實部和虛部都置0Complex(intr,inti):構(gòu)造函數(shù),形參r為實部的初值,i為虛部的初值。addComplex(Complexa):計算當(dāng)前復(fù)數(shù)對象與形參復(fù)數(shù)對象相加。編寫一個完整的JavaApplication程序使用復(fù)數(shù)類Comp

15、lex驗證兩個復(fù)數(shù)1+2i和3+4i相加產(chǎn)生一個新的復(fù)數(shù)4+6i。參考答案:ComplexintRealPart;intImagePart;Complex()RealPart=0;ImagePart=0;Complex(intx,inty)RealPart=x;ImagePart=y;addComplex(Complexc1)RealPart=RealPart+c1.RealPart;ImagePart=ImagePart+c1.ImagePart;publicclassxt020902publicstaticvoidmain(Stringargs)Complexc1=newComplex(1

16、,2);Complexc2=newComplex(1,2);System.out.print(“復(fù)數(shù)c1的實部=”+c1.RealPart+”虛部=”+c1.ImagelPart)System.out.print(“復(fù)數(shù)c2的實部=”+c1.RealPart+”虛部=”+c1.ImagelPart)c1.addComplex(c2);System.out.print(“復(fù)數(shù)cl二c1+c2的實部二”+c1.RealPart+”虛部二”+c1.lmagelPart)(3)定義一個二維向量Va,b類,其中a、b為其屬性,主要操作為:向量相加:向+=量相減:向量內(nèi)積:編程定義該類,并使用=該類。參考

17、答案:X=axc+bxd/程序名稱:Java030801.java/目的:演示自定義類及其如何使用classMyVectorfloatx,y;/表示向量中的x,ymyVector(floatx,floaty)this.x=x;this.y=y;setVector(floatx,floaty)this.x=x;this.y=y;void/向量相加+=voidaddVector(myVectorv1,myVectorv2)this.x=v1.x+v2.x;this.y=v1.y+v2.y;this.y=v1.y+v2.y;this.y=v1.y+v2.y;this.y=v1.y+v2.y;/向量相

18、減-=voidminusVector(myVectorv1,myVectorv2)this.x=v1.x-v2.x;this.y=v1.y-v2.y;/向量內(nèi)積-vc,d=axc+bxdfloatmultVector(myVectorv1)returnthis.x*v1.x+this.y*v1.y;/顯示向量vx,yvoidshowVector()System.out.println(vx,y=+v+x+,+y+);publicclassJava030801publicstaticvoidmain(Stringargs)MyVectora1=newMyVectora2=newMyVectora

19、1=newMyVectora2=newMyVectora3=newa1.showVector();MyVector(1,2);MyVector(3,4);MyVector(0,0);a2.showVector();a3.addVector(a1,a2);a3.showVector();a3.minusVector(a1,a2);a3.showVector();第四章簡述Java中繼承的含義及特點(diǎn)?!敬鸢浮看鸢敢娊滩腣略。指出下列程序中的錯請說明錯誤原因。誤,classApublicinta=1;privateintb=2;protectedintc=3;intd=4;publicintdisp

20、A()privateintdispB()protectedintdispC()intdispD()returnd;publicclassBextendsApublicstaticvoidreturna;main(Stringargs)returnb;returnc;Bbb=newB();bb.testVisitControl();publicvoidtestVisitControl()System.out.println(a+dispA();System.out.println(b+dispB();System.out.println(c+dispC();System.out.println(

21、d+dispD();【答案】子類System.out.println(b+dispB();彳丁編輯時出現(xiàn)錯誤。原因如下:(2)子類B和父類A在同一包中;B不能繼承父類的private型屬性和方法。根據(jù)下面程序片段,畫出類和對象的內(nèi)存映像圖。classAstaticintsv1=10;intsv2=20;intsv3=30;staticvoidsf1()voidf1()classBextendsAstaticintsv2=30;intv2=3;voidf1()Aref1=newA();Bref2=newB();ref1=ref2;答案】A/svl1101A/svl110簡述子類對象的成員初始化的

22、方法?!敬鸢浮看鸢敢娊滩膙略。簡述成員變量的隱藏的含義,并舉例說明?!敬鸢浮看鸢敢娊滩膙略。明。簡述方法的重載和方法的覆蓋的區(qū)別,并舉例說明?!敬鸢浮看鸢敢娊滩腣略。7.列舉this和super的用途。【答案】答案見教材V略。指出下列程序運(yùn)行的輸出結(jié)果。classPointintx,y;Point()this(-1,-1);showxy()Point(inta,intb)x=av;oidSystem.out.println(y=b;showxy()y=”+y);x=+x+publicclassreloadingExamplepublicstaticvoidmain(Stringargs)Poi

23、nta=newPoint();Pointb=newPoint(1,1);showxy();showxy();【答案】輸出結(jié)果為:x=-1y=-1x=1y=1指出下列程序運(yùn)行的輸出結(jié)果。classAintx=1,y=2;doubleadd()returnx+y;classBextendsAintx=10,y=20;doubleadd()returnsuper.x+super.y;classex2publicstaticvoidmain(Stringargs)Aa=newA();Bb=newB();System.out.println(a.add=+a.add();System.out.print

24、ln(b.add=+b.add();【答案】輸出結(jié)果為:a.add=3.0b.add=3.010.簡述接口和抽象類的含義,以及它們兩者之間的不同。【答案】答案見教材V略。第五章為什么說Java多維數(shù)組是數(shù)組元素為數(shù)組的一維數(shù)組,請用事實說明?!敬鸢浮看鸢敢娊滩腣略。判斷下面數(shù)組的定義是否正確?如果不正確,請改正。inta5;charch54;inta=newint4;intN=10;inta=newintN;【答案】數(shù)組定義錯。因為數(shù)組聲明時方括號中不能用數(shù)字,即不允許靜態(tài)說明數(shù)組。數(shù)組定義錯。因為數(shù)組維數(shù)聲明順序應(yīng)該從高到低,先聲明高維,再聲明低維。正確。因為數(shù)組元素個數(shù)可以是常量,也可以是

25、變量。若int,請問a.length,a2.lengtha=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15a3.length分別等于多少?【答案】a.length,a2.length,a3.length分別等于5、3、2。寫出下列程序的運(yùn)行結(jié)果。classAvoidoperate(intc)inti;for(i=0;ic.length;i+)ci=3*ci;publicclassArrayExample4publicstaticvoidmain(Stringargs)Aa=newA();intb=1,2,3,4;a.operate(b);for(inti=0;ib.le

26、ngth;i+)System.out.println(bi);【答案】運(yùn)行結(jié)果為:36912寫出下列程序的運(yùn)行結(jié)果。publicclassStringExample4publicstaticvoidmain(Stringargs)Strings1=abc;Strings2=s1;s2+=def;s1.concat(def);System.out.println(s1=+s1+s2=+s2);【答案】運(yùn)行結(jié)果為:s1=abcs2=abcdef寫出下列程序運(yùn)行的結(jié)果。publicclassStringExample5publicstaticvoidmain(Stringargs)Strings=a

27、b,c,d;reverse(s0,s1);System.out.println(s0=+s0+s1=+s1);staticvoidreverse(Strings0,Strings1)Strings;s=s0;s0=s1;s1=s;【答案】運(yùn)行結(jié)果為:s0=abs1=c寫出下列程序的運(yùn)行結(jié)果。publicclassStringExample6publicstaticvoidmain(Stringargs)Strings=ab,c,d;reverse(s);staticvoidSystem.out.println(s0=+s0+s1=+s1);reverse(Strings)staticvoidS

28、trings0;s0=s1;s1=s0;s0=s0;【答案】運(yùn)行結(jié)果為:s0=cs1=ab寫出下列程序的運(yùn)行結(jié)果。publicclassStringBufferExample3publicstaticvoidmain(Stringargs)StringBuffers1=newStringBuffer(AB);StringBuffers2=newStringBuffer(CD);operate(s1,s2);System.out.println(s1=+s1+s2=+s2);staticvoidoperate(StringBufferx,StringBuffery)x.append(y);x=y

29、;【答案】運(yùn)行結(jié)果為:s1=ABCDs2=CD9判斷一個數(shù)是否是回文數(shù)。如,12321是回文數(shù),個位與萬位相同,十位與千位相同?!緟⒖即鸢浮縤mportjava.util.*;publicclassxt0509publicstaticvoidmain(Stringargs)Scanners=newScanner(System.in);booleanis=true;System.out.print(”請輸入一個正整數(shù):);Ionga=s.nextLong();Stringss=Long.toString(a);charch=ss.toCharArray();intj=ch.length;for(

30、inti=0;ij/2;i+)if(chi!=chj-i-1)is=faIse;if(is=true)System.out.println(”這是一個回文數(shù));elseSystem.out.println(這不是一個回文數(shù));10輸入20個數(shù),并對20個數(shù)進(jìn)行排序。importjava.util.*;publicclassxt0510publicstaticvoidmain(Stringargs)Scanners=newScanner(System.in);inta=newint20;System.out.println(請輸入20個整數(shù):);for(inti=0;i20;i+)ai=s.ne

31、xtInt();for(inti=0;i10;i+)for(intj=i+1;jaj)intt=ai;ai=aj;aj=t;for(inti=0;i10;i+)System.out.print(ai+);11打印出楊輝三角形。1341010341010341010341010參考答案】:publicclassxt0511publicstaticvoidmain(Stringargs)inta=newint1010;for(inti=0;i10;i+)aii=1;ai0=1;for(inti=2;i10;i+)for(intj=1;ji;j+)aij=ai-1j-1+ai-1j;for(inti

32、=0;i10;i+)for(intk=0;k2*(10-i)-1;k+)System.out.print();for(intj=0;j=i;j+)System.out.print(aij+);System.out.println();12字符串排序。【參考答案】publicclassxt0512publicstaticvoidmain(Stringargs)intN=5;Stringtemp=null;Strings=newStringN;s0=matter;s1=state;s2=solid;s3=liquid;s4=gas;for(inti=0;iN;i+)for(intj=i+1;jN;

33、j+)if(compare(si,sj)=false)temp=si;si=sj;sj=temp;for(inti=0;iN;i+)System.out.println(si);staticbooleancompare(Strings1,Strings2)booleanresult=true;for(inti=0;is1.length()&is2.charAt(i)result=false;break;elseif(s1.charAt(i)s2.charAt(i)result=true;break;elseif(s1.length()。簡述Java異常處理的機(jī)制?!敬鸢浮看鸢敢娊滩腣略。簡述f

34、inally塊的用途,舉例說明?!敬鸢浮看鸢敢娊滩腣略。簡述throw和throws的用途,以及兩者之間的差異。【答案】答案見教材V略。編寫一個程序,自定義一個異常,并對其進(jìn)行處理?!敬鸢浮?myException.javaimportjava.util.*;classmyExceptionextendsExceptionclassUserTrialintscore;publicUserTrial(inta)score=a;voidshow()throwsmyExceptionif(score100)thrownewmyException();System.out.println(score=

35、+score);classxt060501publicstaticvoidmain(Stringargs)UserTrialtrial=newUserTrial(4);Scannerreader=newScanner(System.in);System.out.println(請輸入分?jǐn)?shù),并按回車鍵確認(rèn));intx=reader.nextInt();trial.score=x;System.out.println(x=+x);trytrial.show();catch(myExceptione)System.out.println(錯誤分?jǐn)?shù):不在0,100之間);說明:自定義異常myExcep

36、tion,當(dāng)輸入分?jǐn)?shù)不在0,100之間時,激活異常,顯示錯誤分?jǐn)?shù):不在0,100之間錯誤提示。列舉10種常見異常。【答案】答案見教材V略。第七章/習(xí)題1/程序名稱:Exam070401.java/功能:獲取屬性publicclassExam070401publicstaticvoidmain(Stringargs)System.out.println(運(yùn)彳丁時環(huán)境版本=+System.getProperty(java.version);System.out.println(安裝目錄二+System.getProperty(java.home);System.out.println(類路徑二+S

37、ystem.getProperty(java.class.path);System.out.println(操作系統(tǒng)的名稱二+System.getProperty();System.out.println(操作系統(tǒng)的版本二+System.getProperty(os.version);System.out.println(用戶的賬戶名稱二+System.getProperty();System.out.println(用戶的主目錄二+System.getProperty(user.home);System.out.println(用戶的當(dāng)前工作目錄=+System.getProperty(us

38、er.dir);/習(xí)題importjava.util.*;classtestvoidtestString(Stringstr0)inti,flag;charch;Stringstr1=newString();Stringstr2=newString();Queueque=newLinkedList();Stackstk=newStack();inti=1;while(i=str0.length()que.offer(str0.substring(1,1);stk.push(str0.substring(1,1);flag=1while(flag=1&!skt.empty()str1=que.p

39、oll();str2=stk.pop();if!str1.equals(str2)flag=0;if(flag=1)System.out.println(”是回文!);/PrintBipolypublicclassExam070402publicstaticvoidmain(Stringargs)myQueuea=newtest();a.testString(abba);a.testString(ababab);/習(xí)題publicclassExam070403publicstaticvoidmain(Stringargs)doubled;Strings=1.1,2.5,3.12;4.56;5.

40、13,6.0;7.6,8.8,99.2,10.11;/對s以分號為分隔符分離生成數(shù)組一維數(shù)組sFirstStringsFirst=s.split(;);d=newdoublesFirst.length;for(inti=0;isFirst.length;i+)/System.out.println(sFirsti+);/對sFirsti以逗號為分隔符分離生成數(shù)組一維數(shù)組sSecondStringsSecond=sFirsti.split(,);di=newdoublesSecond.length;for(intj=0;jsSecond.length;j+)dij=Double.parseDou

41、ble(sSecondj);for(inti=0;id.length;i+)for(intj=0;jdi.length;j+)System.out.print(dij+);System.out.println();/習(xí)題importjava.util.*;publicclassExam070404publicstaticvoidmain(Stringargs)Randomrand=newRandom();intn0,n1,n2,n3,n4,v0;n0=n1=n2=n3=n4=0;for(inti=0;i=0&v=60&v=70&v=80&v=90&v=99)n4=n4+1;System.out

42、.println(”區(qū)間0,59的個數(shù)二+n0);System.out.println(區(qū)間60,69的個數(shù)二+n1);System.out.println(”區(qū)間70,79的個數(shù)二+n2);System.out.println(區(qū)間80,89的個數(shù)二+n3);System.out.println(區(qū)間90,100的個數(shù)二+n4);第八章編寫一個程序?qū)崿F(xiàn)以下功能:從鍵盤輸入一行文字寫入到一個文件中。importjava.io.*;publicclassxt070101publicstaticvoidmain(Stringargs)trySystem.out.print(”輸入一彳丁字符:);i

43、ntcount,n=512,num=0;bytebuffer=newbyten;FileOutputStreamwf=newFileOutputStream(xt070101.txt);docount=System.in.read(buffer);wf.write(buffer,0,count);/寫入輸出流num=num+1;while(num0)/讀取輸入流System.out.print(newString(buffer);System.out.println();rf.close();/關(guān)閉輸入流catch(IOExceptionioe)System.out.println(ioe);

44、catch(Exceptione)System.out.println(e);編寫一個程序?qū)崿F(xiàn)以下功能:將1100內(nèi)的奇數(shù)寫入二進(jìn)制文件,然后從該二進(jìn)制文件中逐一讀取奇數(shù)并以每行10個數(shù)的方式輸出到顯示屏。importjava.io.*;publicclassxt070301publicstaticvoidmain(Stringargs)throwsIOExceptionStringfname=xt070301.txt;tryinti;FileOutputStreamout=newFileOutputStream(fname);DataOutputStreamwf=newDataOutputS

45、tream(out);for(i=1;i=100;i+)if(i%2!=0)wf.writeInt(i);wf.closeO;/關(guān)閉輸出流FileInputStreamin=newFileInputStream(fname);DataInputStreamrf=newDataInputStream(in);i=0;while(i10)i=i+1;System.out.println(第+i+個奇數(shù)二+rf.readlnt();rf.close();II關(guān)閉輸入流catch(lOExceptionioe)System.out.printin(ioe);catch(Exceptione)Syste

46、m.out.println(e);表7-12table表結(jié)構(gòu)4編寫一個程序?qū)崿F(xiàn)以下功能:(1)往Access數(shù)據(jù)庫表table中增加一條記錄;(2)修改table表中滿足一定條件的記錄;(3)刪除table表中滿足一定條件的記錄;(4)在顯示屏上顯示importjava.sql.*;importjava.io.*;publicclassxt070401publicstaticvoidmain(Stringargs)Stringtt=null;intcount=0;StringsDBDriver=sun.jdbc.odbcJdbcOdbcDriverStringsConnStr=jdbc:odb

47、c:myaccess;Connectionconn=null;StatementStmt=null;ResultSetRS=null;tryClass.forName(sDBDriver);catch(java.lang.ClassNotFoundExceptione)System.err.println(shop():+e.getMessage();tryconn=DriverManager.getConnection(sConnStr,);Stmt=conn.createStatement();/*插入三條記錄*/Stmt.executeUpdate(INSERTINTOtable2VAL

48、UES(吳,男,2007001,90);Stmt.executeUpdate(INSERTINTOtable2VALUES(郭妞,女,2007002,60);Stmt.executeUpdate(INSERTINTOtable2VALUES(大發(fā),男,2007003,100);/*修改姓名為郭妞的總分*/Stmt.executeUpdate(Updatetable2set總分=80where(姓名二郭妞);/*刪除姓名為吳的記錄*/Stmt.executeUpdate(Deletefromtable2where姓名二吳);/*顯示表中所有記錄*/RS=Stmt.executeQuery(SEL

49、ECT*FROMtable2);while(RS.next()System.out.print(RS.getString(1)+);System.out.print(RS.getString(2)+);System.out.print(RS.getString(3)+);)System.out.println(RS.getString(4)+conn.close();catch(SQLExceptionex)System.err.println(aq.executeQuery:+ex.getMessage();第九章簡述線程的含義及特點(diǎn)。簡述線程的生命周期的含義。線程的個生命周期包括哪些狀態(tài)?

50、各狀態(tài)之間是如何進(jìn)行轉(zhuǎn)換的?簡述創(chuàng)建線程的方法,并舉例說明。簡述Java是如何進(jìn)行線程調(diào)度的。為什么在多線程系統(tǒng)中要引入同步機(jī)制?Java是如何實現(xiàn)同步機(jī)制的?編程驗證優(yōu)先級高的進(jìn)程比優(yōu)先級低的進(jìn)程優(yōu)先被調(diào)度。創(chuàng)建一個Thread子類,覆蓋run()方法。要求在run()方法內(nèi),打印一條線程已啟動的消息,然后調(diào)用sleep()方法,sleep()方法延遲時間到后就退出程序。上機(jī)調(diào)試本章中的實例。第十章第十一章簡述AppIet程序的生命周期含義。Applet個生命周期中各方法之間如何切換?編寫一個計算圓錐體積的程序,要求在文本框Text1和Text2中分別輸入左、右操作數(shù),單擊運(yùn)算符按鈕(+,-

51、,*,/)時在另一個文本框中顯示運(yùn)算結(jié)果。注意在執(zhí)行除運(yùn)算時,若被除數(shù)為零,要求出現(xiàn)錯誤提示信息,如下圖所示。importjava.awt.*;importjavax.swing.*;importjava.awt.event.*;classmyJFrameextendsJFrameimplementsActionListenerintx=0,y=0,w,h;JLabeljlb1,jlb2,jlb3;JButtonjbt1,jbt2,jbt3,jbt4,jbt5;JTextFieldjtext1,jtext2,jtext3;Containercp=getContentPane();publicm

52、yJFrame()setLayout(null);jbt1=newJButton(”加”);jbt2=newJButton(”減);jbt3=newJButton(乘);jbt4二newJButton(除);jbt5二newJButton(退出);jlb1=newJLabel(左操作數(shù):JLabel.CENTER);jlb2=newJLabel(右操作數(shù):,JLabel.CENTER);jlb3=newJLabel(結(jié)果JLabel.CENTER);jtext1=newJTextField();jtext2=newJTextField();jtext3=newJTextField();x=80

53、;y=60;w=60;h=30;cp.add(jbt1);cp.add(jbt2);cp.add(jbt3);cp.add(jbt4);cp.add(jbt5);cp.add(jlb1);cp.add(jlb2);cp.add(jlb3);cp.add(jtext1);cp.add(jtext2);cp.add(jtext3);jbt1.addActionListener(this);jbt2.addActionListener(this);jbt3.addActionListener(this);jbt4.addActionListener(this);jbt5.addActionListe

54、ner(this);jbt1.setBounds(x,y,w,h);jbt2.setBounds(2*x,y,w,h);jbt3.setBounds(3*x,y,w,h);jbt4.setBounds(4*x,y,w,h);jbt5.setBounds(x,5*y,5*w,h);jlb1.setBounds(x,2*y,2*w,h);jtext1.setBounds(3*x,2*y,2*w,h);jlb2.setBounds(x,3*y,2*w,h);jtext2.setBounds(3*x,3*y,2*w,h);jlb3.setBounds(x,4*y,2*w,h);jtext3.setBo

55、unds(3*x,4*y,2*w,h);jlb3.setBounds(x,4*y,2*w,h);jtext3.setBounds(3*x,4*y,2*w,h);setSize(600,700);show();publicvoidactionPerformed(ActionEvente)floatnum1=0,num2=0,num3=0;charch=+;if(e.getSource()=jbt5)dispose();/釋放資源System.exit(0);/退出程序if(e.getSource()=jbt1)ch=+;elseif(e.getSource()=jbt2)ch=-;elseif(

56、e.getSource()=jbt3)ch=*;elseif(e.getSource()=jbt4)ch=/;num1=Float.valueOf(jtext1.getText().floatValue();num2=Float.valueOf(jtext2.getText().floatValue();switch(ch)case+:num3=num1+num2;break;case-:num3=num1-num2;break;I9Icase*:num3=num1*num2;break;case/if(num2!=0)num3=num1/num2;elsenum3=0;jtext2.setT

57、ext(”被0除);break;jtext3.setText(String.valueOf(num3);publicclassxt090201publicstaticvoidmain(Stringargs)myJFrameobj=newmyJFrame();3.編寫一個菜單窗口,菜單詳細(xì)信息如下:菜單項文件編輯工具幫助菜單子項新建撤銷設(shè)置關(guān)于打開復(fù)制統(tǒng)計字符保存粘貼關(guān)閉查找替換要求:鼠標(biāo)單擊菜單子項時,彈出一個窗口顯示“該項目正在建設(shè)/以下程序僅供讀者學(xué)習(xí)參考importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;importja

58、vax.swing.tree.*;importjavax.swing.event.*;importjavax.swing.border.*;importjavax.swing.table.*;publicclassxt090301extendsJFrame/主類,初始化所有子類,并設(shè)置主類的相關(guān)屬性Stringinform;publicxt090301()/初始化所有類MenuTestmenuTest=newMenuTest();/LeftPanelleftPanel=newLeftPanel();/RightPanelrightPanel=newRightPanel();/BottomPan

59、elbottomPanel=newBottomPanel();/CenterPanelcenterPanel=newCenterPanel();/設(shè)置主類的布局Containercon=this.getContentPane();BorderLayoutmylayout=newBorderLayout();con.setLayout(mylayout);this.setJMenuBar(menuTest);/con.add(leftPanel,mylayout.WEST);/con.add(rightPanel,mylayout.EAST);/con.add(centerPanel,mylay

60、out.CENTER);/con.add(bottomPanel,mylayout.SOUTH);/利用無名內(nèi)類,增加窗口事件this.addWindowListener(newWindowAdapter()publicvoidWindowClosing(WindowEvente)dispose();/釋放資源System.exit(0);/退出程序);setTitle(”習(xí)題4);setSize(750,650);/窗口大小/setUndecorated(true);setLocation(200,200);/窗口位置setResizable(false);/設(shè)置窗口大小不可改變show()

溫馨提示

  • 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

提交評論