




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
59/594747Java語(yǔ)言程序設(shè)計(jì)(一)第一章Jave語(yǔ)言基礎(chǔ)1.1Java語(yǔ)言的特點(diǎn)領(lǐng)會(huì)Java語(yǔ)言的特點(diǎn)、關(guān)鍵字
1010-11.Java語(yǔ)言采用多種機(jī)制來(lái)保證可移植性,其中最主要的是______。虛擬機(jī)1110-11.Java語(yǔ)言是一種____強(qiáng)類型語(yǔ)言___語(yǔ)言,它約束程序員必須遵守規(guī)定編寫(xiě)程序,能讓編譯器檢測(cè)出程序中盡可能多的錯(cuò)誤。1.2Java應(yīng)用程序和小應(yīng)用程序識(shí)記 Java應(yīng)用程序與小應(yīng)用程序的特點(diǎn)和區(qū)別11.一個(gè)應(yīng)用程序必須在某個(gè)類中定義的方法是______。main()1201-11.能在瀏覽器上執(zhí)行的Java程序被稱為小應(yīng)用程序。1.3Java程序的開(kāi)發(fā)過(guò)程11.Java程序的字節(jié)碼文件的擴(kuò)展名是_________。Class1001-11.Java的編譯程序先將Java源程序翻譯成與機(jī)器無(wú)關(guān)的__________。字節(jié)碼1101-11.Java源文件的擴(kuò)展名是_____.java____。1210-11.如果Java源文件中有多個(gè)類,那么只能有一個(gè)__public____類。1404-11.類Testll經(jīng)Java編譯程序編譯后,產(chǎn)生的文件是______。Test11.class1.4標(biāo)識(shí)符和關(guān)鍵字簡(jiǎn)單應(yīng)用:Java程序的標(biāo)識(shí)符命名規(guī)則、注釋、基本數(shù)據(jù)類型標(biāo)識(shí)符可以用來(lái)標(biāo)識(shí)文件名、變量名、類名、接口名和成員方法名等,其構(gòu)造規(guī)則如下:標(biāo)識(shí)符由Java字母和Java數(shù)字組成;首字符必須是Java字母;除去關(guān)鍵字、false、true和null;所有標(biāo)識(shí)符是區(qū)分大小寫(xiě)的。注釋:行注釋 //塊注釋 /*….*/文檔注釋 /**…*/1404-1.以下標(biāo)識(shí)符中,不是Java語(yǔ)言關(guān)鍵字的是A.waitB.newC.long D.switch1.下述字符組合不能作為Java程序標(biāo)識(shí)符的是()A.Aa12 B.大xC.y小 D.5x1.下面供選字符序列中,不屬于Java語(yǔ)言關(guān)鍵字的是()A.goto B.nullC.false D.native1.在下述字符串中,不屬于Java語(yǔ)言關(guān)鍵字的是(C)A.float B.newC.java D.return1110-1.下面供選字符序列中,不屬于Java語(yǔ)言關(guān)鍵字的是()A.throwB.synchronizedC.protect D.try1010-1.以下是關(guān)于Java語(yǔ)言關(guān)鍵字的敘述,其中正確的是()A.關(guān)鍵字可以用來(lái)描述類的成員類型,但是不能描述普通變量B.關(guān)鍵字由字母(包括英文字母、下劃線字符、美元字符、文字字符)和數(shù)字組成C.關(guān)鍵字不可以用作變量、方法、類或標(biāo)號(hào)的標(biāo)識(shí)符D.break和main都是Java語(yǔ)言的關(guān)鍵字0開(kāi)頭表8進(jìn)制常量,數(shù)字只能(0-7)1.5基本數(shù)據(jù)類型0開(kāi)頭表8進(jìn)制常量,數(shù)字只能(0-7)1.下列字符組合不能作為Java整型常量的是()A.078 B.0x3ACBC.5000 D.0x3ABC1.在Java語(yǔ)言中,用于標(biāo)記回車符的轉(zhuǎn)義字符是A.\bB./bC.\n D./n1001-12.表達(dá)式¨23&18’’的值是__________。23181101-1.在Java語(yǔ)言中,int類型數(shù)據(jù)的長(zhǎng)度是()A.1個(gè)字節(jié)B.2個(gè)字節(jié)C.4個(gè)字節(jié) D.8個(gè)字節(jié)11.在Java語(yǔ)言中,雙精度型變量在內(nèi)存中占____8______個(gè)字節(jié)。1101-l4.布爾類型數(shù)組元素的默認(rèn)初值是____false_____。第2章運(yùn)算和語(yǔ)句選擇填空簡(jiǎn)答程序填空2.1數(shù)據(jù)運(yùn)算識(shí)記: 常用運(yùn)算符的定義、包聲明語(yǔ)句(package)和導(dǎo)入語(yǔ)句(import)領(lǐng)會(huì): 條件運(yùn)算和其他運(yùn)算2.Java語(yǔ)言中數(shù)值數(shù)據(jù)的類型能自動(dòng)轉(zhuǎn)換,按照從左到右的轉(zhuǎn)換次序?yàn)?B)A.byte→int→short→long→float→doubleB.byte→short→int→long→float→doubleC.byte→short→int→float→long→doubleD.short→byte→int→long→float→double1404-2.以下數(shù)據(jù)類型轉(zhuǎn)換中,必須進(jìn)行強(qiáng)制類型轉(zhuǎn)換的是A.int→charB.short→longC.float→double D.byte→int2.以下程序代碼的輸出的結(jié)果是()intx=53;System.out.println(1.0+x/2);A.27.0 B.27.5C.1.026 D.1404-12.表達(dá)式“45&20”的十進(jìn)制值是______。42.設(shè)有定義inti=6;,則執(zhí)行語(yǔ)句“i+=i-1;’’后,i的值為A.10B.11C.121210-12.運(yùn)算符‘‘<”、“*”和“&&”按優(yōu)先級(jí)從高到低的順序排列為_(kāi)_*<&&____。21.請(qǐng)寫(xiě)出表示條件“x=2與y=3有且只有一個(gè)成立”的Java表達(dá)式”。(x=2)!=(y=3)或(x=2&&y!=3)||(x!=2&&y!=3)12.構(gòu)造一個(gè)Java表達(dá)式:y/x>5,并且x!=0。這個(gè)表達(dá)式是_________。y/x>5&&x!=01101-12.表達(dá)式-4>>l的十進(jìn)制值是______-2___。(解法:-4/(2的一次冪))21.請(qǐng)寫(xiě)出表示year年是閏年的Java表達(dá)式。閏年的條件是:每4年一個(gè)閏年,但每100年少一個(gè)閏年,每400年又增加一個(gè)閏年。(year%4==0)&&(year%4!=0)||(year%400==0)簡(jiǎn)答12.用條件運(yùn)算符構(gòu)造一個(gè)表達(dá)式:goal等于10時(shí),表達(dá)式的值為“對(duì)了!”,否則,表達(dá)式的值為“錯(cuò)了!”。這個(gè)表達(dá)式是_________。1010-2.執(zhí)行以下代碼,輸出結(jié)果是()intx=5,y=7,u=9,v=6;System.out.println(x>y?x+2:u>v?u-3:v+2);A.8B.62.以下程序代碼的輸出結(jié)果是()intx=73;System.out.println(x>>1);A.36B.36.5c.37 1110-2.以下程序代碼的輸出的結(jié)果是()doublex=25.6;System.out.println((int)x<<1);A.48B.50C.51D.521201-2.表達(dá)式“-1>>>1”A.-2B.231-1C.-(231-1)D.23212.在Java語(yǔ)言中,邏輯右移運(yùn)算符為_(kāi)___>>>______。2.2語(yǔ)句簡(jiǎn)單應(yīng)用: 閱讀簡(jiǎn)單程序的功能和輸出結(jié)果,編寫(xiě)簡(jiǎn)單的程序綜合應(yīng)用: Java語(yǔ)言語(yǔ)句的書(shū)寫(xiě)形式和語(yǔ)句的語(yǔ)義,算術(shù)運(yùn)算符、自增自減運(yùn)算符、關(guān)系運(yùn)算符和邏輯運(yùn)算符1210-2.以下關(guān)于Java語(yǔ)句的說(shuō)法正確的是A.continue語(yǔ)句必須出現(xiàn)在多路按值選擇結(jié)構(gòu)或循環(huán)結(jié)構(gòu)中B.return語(yǔ)句可以出現(xiàn)在方法體的外面C.編譯系統(tǒng)會(huì)把單獨(dú)的分號(hào)看成是空語(yǔ)句D.break語(yǔ)句的作用是提早結(jié)束當(dāng)前輪次循環(huán)1001-21.請(qǐng)寫(xiě)出一段if語(yǔ)句,判斷一個(gè)整數(shù)n是否為偶數(shù)。如果是偶數(shù),輸出“Yes.”;否則,輸出“No.”。If(n%2==0){System.out.println(“Yes”);}else{System.out.println(“No”);}1110-12.在Java語(yǔ)言中,package_____語(yǔ)句用于表示出現(xiàn)在該文件中的所有類都屬于這個(gè)程序包。1010-21.請(qǐng)使用for循環(huán)語(yǔ)句計(jì)算S=1+的值。doubles=0.0for(inti=1;s<=10;i++)s+=1.0/I;1404-21.已知變量n,請(qǐng)寫(xiě)出使用for語(yǔ)句計(jì)算的代碼。1101-21.請(qǐng)寫(xiě)一個(gè)if語(yǔ)句,判斷整數(shù)n是否同時(shí)滿足“被3除余2,被7除余1”1110-21.請(qǐng)使用for循環(huán)語(yǔ)句實(shí)現(xiàn)計(jì)算的值。2.以下程序代碼的輸出結(jié)果是()intx=10;while(x>7){System.out.print("*");x--;}A.** B.***C.* D.****1101-2.在switch語(yǔ)句中,switch后面括號(hào)內(nèi)的表達(dá)式的類型不能是()A.byteB.longC.char D.int1010-12.程序包聲明的格式是______。12.import語(yǔ)句的格式是______。12、import包名.類名;1201-21.請(qǐng)寫(xiě)出以下程序段的執(zhí)行結(jié)果。intc=0,d,n=3758;while(n>0){if((d=n%l0)>c)c=d;n/=10;}System.out.println("結(jié)果="+c);執(zhí)行結(jié)果:結(jié)果=821.請(qǐng)寫(xiě)出下面程序段的執(zhí)行結(jié)果。intn=90;intk=2;System.out.print(n+″=〞);while(k<=n){if(k==n){System.out.println(n);break;}elseif(n%k==0){System.out.print(k+″*″);n=n/k;)elsek++;}90=2*3*3*527.方法intmaxDigit(intn)的功能是找出十進(jìn)制整數(shù)n各位中最大的一位數(shù)字。例如,n=23765,該方法的返回值是7。staticintmaxDigit(intn){intc=0,d;參考答案:n%10returnc參考答案:n%10returncd=_______;if(d>c)c=d;n/=10;}________;}27.方法intsigmaDigit(intn)的功能是求出十進(jìn)制整數(shù)n的各位數(shù)字之和。例如,n=1234,該方法的返回值是10。staticintsigmaDigit(intn){intsum=0,d;while(n>0){d=n%10;_________;sum+=dn/=10;}_________;returnsum1010-27.方法booleanisPrime(intn)的功能是判斷正整數(shù)n(n>1)是否為質(zhì)數(shù)。staticbooleanisPrime(intn){inti;if(n==2)returntrue;if(n%2==0)returnfalse;for(i=3;i*i<=n;i+=2)if(_________)break;if(_________)returntrue;returnfalse;}1101-27.方法intnumberOfDigits(intn)的功能是計(jì)算十進(jìn)制正整數(shù)n的位數(shù)。intnumberOfDigits(intn){intc=0:do{n/=10;_________;}while(_________);returnc;}第3章面向?qū)ο缶幊袒A(chǔ)選擇填空簡(jiǎn)答分析程序運(yùn)行結(jié)果識(shí)記:類的內(nèi)存模型,final、abstract、super、this的用法,Applet程序結(jié)構(gòu)和執(zhí)行過(guò)程。領(lǐng)會(huì):抽象、對(duì)象、消息、類、繼承、封裝、接口、多態(tài)等面向?qū)ο蟮幕靖拍?。?jiǎn)單應(yīng)用:訪問(wèn)權(quán)限的設(shè)置,Applet類的init()、strart()、stop()、destroy()、paint()、repaint()等方法。綜合應(yīng)用:類的聲明、成員變量(實(shí)例變量、類變量)和方法(實(shí)例方法、類方法)、構(gòu)造方法、方法重載,對(duì)象的聲明、創(chuàng)建和使用,接口的聲明和使用。3.1面向?qū)ο蟮幕靖拍?3.在面向?qū)ο笳Z(yǔ)言中,對(duì)象之間的交互通過(guò)______實(shí)現(xiàn)。相互發(fā)送消息1110-13.在Java程序系統(tǒng)中,對(duì)象之間的交互通過(guò)相互發(fā)送_____消息__實(shí)現(xiàn)13.類是對(duì)一組相同對(duì)象的描述,類概括了同類對(duì)象的共有性質(zhì):_________。(P40)數(shù)據(jù)(屬性)和方法(函數(shù))1404-3.以下供選擇的概念中,屬于面向?qū)ο笳Z(yǔ)言重要概念和機(jī)制之一的是A.函數(shù)調(diào)用B.模塊C.繼承 D.結(jié)構(gòu)化1010-13.當(dāng)聯(lián)編推遲至運(yùn)行時(shí)間實(shí)現(xiàn)時(shí),該聯(lián)編過(guò)程稱為_(kāi)_____。動(dòng)態(tài)聯(lián)編3.在以下供選擇的概念中,不屬于面向?qū)ο笳Z(yǔ)言概念的是(B)A.消息B.模塊C.繼承D.多態(tài)性1101-22.請(qǐng)寫(xiě)出在面向?qū)ο笙到y(tǒng)中,類和對(duì)象的關(guān)系。1110-3.在以下供選擇的概念中,不屬于面向?qū)ο笳Z(yǔ)言概念的是()A.類B.函數(shù)C.動(dòng)態(tài)聯(lián)編 D.抽象13.在Java語(yǔ)言中,通過(guò)擴(kuò)展原有的類,聲明新類的機(jī)制被稱為_(kāi)__繼承_____。3.2Java的類和對(duì)象22.請(qǐng)寫(xiě)出在類的方法的定義之前,加上修飾字public、private的區(qū)別。Public修飾的方法為公用方法,任何類的方法都可以訪問(wèn)他Private修飾的方法,本類內(nèi)部可以訪問(wèn)1010-3.Java語(yǔ)言中,只限子類或者同一包中的類的方法能訪問(wèn)的訪問(wèn)權(quán)限是()A.publicB.privateC.protected D.<無(wú)修飾>1201-22.什么是方法重載,如何正確區(qū)分重載?方法重載是指在一個(gè)類中定義多個(gè)有相同名字的方法。區(qū)分方法:根據(jù)這些方法或參數(shù)不同或者按順序參數(shù)的類型不同來(lái)區(qū)分。1101-13.在定義成員變量時(shí),用關(guān)鍵字___static______修飾的是類變量。3.參照以下Java代碼,以下四個(gè)敘述中最確切的是()classA{intx;staticinty;voidfac(Strings){Syatem.out.println("字符串:"+s);}}A.x、y和s都是成員變量B.x是實(shí)例變量、y是類變量、s是局部變量C.x和y是實(shí)例變量、s是參數(shù)D.x、y和s都是實(shí)例變量1201-3.Java語(yǔ)言中,在類定義時(shí)用final關(guān)鍵字修飾,是指這個(gè)類()A.子類必須實(shí)現(xiàn)父類未實(shí)現(xiàn)的方法 B.沒(méi)有具體實(shí)現(xiàn)代碼C.必須要有實(shí)例 D.不能被繼承1210-3.不能被再繼承的類是A.final類B.abstract類C.public類 D.用戶自定義類1404-13.如果類A繼承和擴(kuò)展類B,則子類A和超類B之間的關(guān)系是__isa____。1201-12.如果子類A隱藏了超類B的成員變量x,而類A的某個(gè)方法f()要引用類B的x,則引用類B的x的引用代碼可以寫(xiě)成super.x。1201-14.設(shè)u和v是類A的兩個(gè)對(duì)象,則邏輯表達(dá)式“u==v”的意義是引用相同的對(duì)象。0901-32.閱讀下列程序,請(qǐng)寫(xiě)出該程序的輸出結(jié)果。classA{intx,y;標(biāo)識(shí):類的內(nèi)存模型A(inta,intb){標(biāo)識(shí):類的內(nèi)存模型x=a;y=b;}}publicclasssample{publicstaticvoidmain(Stringargs[]){Apl,p2;p2=newA(12,15);p1=p2;p2.x++;System.out.println("p1.x="+p1.x);}}p1.x=133.設(shè)類U聲明,及對(duì)象u和v的定義如下:classU{intx,inty;理解引用和對(duì)象實(shí)體很重要U(inta,intb){x=a;y=b;}理解引用和對(duì)象實(shí)體很重要voidcopy(Ua){x=a.x;y=a.y;}}Uu=newU(1,2),v=newU(2,3);在以下供選擇的代碼中,可能引起系統(tǒng)回收內(nèi)存的是()A.u.x=v.y;u.y=v.x; B.u=v;C.u.copy(v); D.v.copy(u);1010-32.閱讀下列程序,請(qǐng)寫(xiě)出該程序的輸出結(jié)果??键c(diǎn):實(shí)例變量和類變量publicclassA{intm=5;staticintn=3;publicstaticvoidmain(String[]args){Aobj1=newA();Aobj2=newA();objl.m*=2;objl.n*=4;obj2.m+=1;obj2.n+=6;System.out.println("obj1.m=''+obj1.m);System.out.println("obj1.n="+obj1.n);System.out.println("obj2.m="+obj2.m);System.out.println("obj2.n="+obj2.n);}}22.如果類Student是類Person的子類,類Undergraduate是類Student的子類,請(qǐng)指出以下代碼行中哪些是不合法的。繼承――父子類間的賦值兼容Personp1=newStudent();Personp2=newUndergraduate();Students1=newPerson();Students2=newUndergraduate();Undergraduateug1=newPerson();Undergraduateug2=newStudent();Objectob=newStudent();參考答案:(P57)Students1=newPerson();Undergraduateug1=newPerson();Undergraduateug2=newStudent();[解析]本題考核知識(shí)點(diǎn)是類之間的is-a關(guān)系。在兩個(gè)相關(guān)的類之間,可能會(huì)有is-a和has-a關(guān)系。若類A是繼承擴(kuò)展類B,則子類A和超類B之間是is-a關(guān)系,即類A是一個(gè)類B。這種情況下,A類對(duì)象一定可以是B類類型,因?yàn)锽類的所有成員A類也有。也就是子類對(duì)象可以是超類類型。語(yǔ)句Bb=newA()是正確的,Aa=newB()是錯(cuò)誤的。1001-32.閱讀下列程序,請(qǐng)寫(xiě)出該程序的輸出結(jié)果。classParent{privatevoidmethod1(){System.out.println("Parent′smethod1()");}publicvoidmethod2(){System.out.println("Parent′smethod2()");method1();}}classChildextendsParent{publicvoidmethod1(){System.out.println("Child′smethod1()");}publicstaticvoidmain(Stringargs[]){Parentp=newChild();p.method2();}此處應(yīng)注意Parent此處應(yīng)注意Parent類的method1()是私有方法,不能被繼承,若為public則是覆蓋則結(jié)果為Parent′smethod2()Child′smethod1()Parent′smethod2()Parent′smethod1()32.閱讀下列程序,請(qǐng)寫(xiě)出該程序的輸出結(jié)果??键c(diǎn):多重繼承子類對(duì)象的構(gòu)造classTree{privateStringname;publicbooleanflower;publicintbirthYear;Tree(Stringn,booleanf,inty){name=n;flower=f;birthYear=y;}publicvoidsetName(Stringn){name=n;}publicStringgetName(){returnname;}publicvoidprintTree(Stringstr){System.out.println(str);System.out.println("Name:"+name);System.out.println("BirthYear:"+birthYear);System.out.println("Flower:"+flower);}}classPineTreeextendsTree{publicbooleanconiferous=true;PineTree(Stringn,booleanf,inty,booleanc){super(n,f,y);coniferous=c;}publicvoidprintTree(Stringstr){super,printTree(str);System.out.println("Coniferous:"+coniferous);}}classTest32{publicstaticvoidmain(String[]args){TreefOb=newTree("MayFlower",true,1980);PineTreesOb=newPineTree("Pine",false,2000,true);fOb.printTree("fOb:");sOb.printTree("sOb:");fOb:
Name:MayFlower
BirthYear:1980
Flower:true(2分)
sOb:
Name:Pine
BirthYear:2000
Flower:false
Coniferous:true(2分)}fOb:
Name:MayFlower
BirthYear:1980
Flower:true(2分)
sOb:
Name:Pine
BirthYear:2000
Flower:false
Coniferous:true(2分)}3.以下關(guān)于抽象類及抽象方法的說(shuō)法中,不正確的是A.抽象方法只能出現(xiàn)在抽象類中 B.抽象類必須有抽象方法C.有抽象方法的類一定是抽象類 D.抽象方法沒(méi)有實(shí)現(xiàn)的代碼13.在類聲明之前用_________修飾,聲明類是不能被再繼承的類,即它不能再有子類。Final3.Java語(yǔ)言中,在類定義時(shí)用final關(guān)鍵字修飾,是指這個(gè)類()A.不能被繼承 B.在子類的方法中不能被調(diào)用C.能被別的程序自由調(diào)用 D.不能被子類的方法覆蓋1001-13.如果類A某個(gè)成員變量的類型是類B,則類A和類B之間是__________關(guān)系。(P57)Has-a3.3接口1001-22.請(qǐng)寫(xiě)出接口定義的一般形式。(P59)1404-22.請(qǐng)寫(xiě)出接口體中可能包含的內(nèi)容。1101-3.以下關(guān)于接口的敘述中,正確的是()A.所有的接口都是公共接口,可被所有的類和接口使用B.一個(gè)類通過(guò)使用關(guān)鍵字interface聲明自己使用一個(gè)或多個(gè)接口C.接口中所有的變量都默認(rèn)為publicabstract屬性D.接口體中不提供方法的實(shí)現(xiàn)1201-13.接口有與類相似的基本形式,它有常量定義和方法定義,但沒(méi)有方法的實(shí)現(xiàn)代碼。3.4基本類3.5Java小應(yīng)用程序基礎(chǔ)標(biāo)識(shí):小應(yīng)用程序與Applet類的關(guān)系,小應(yīng)用程序結(jié)構(gòu)和執(zhí)行過(guò)程簡(jiǎn)單應(yīng)用:Applet類的init()、strart()、stop()、destroy()、paint()、repaint()等方法。11.一個(gè)小應(yīng)用程序必須定義成一個(gè)_________。Applet(JApplet)類的子類1010-22.請(qǐng)寫(xiě)出Applet類中init()方法的功能創(chuàng)建所需要的對(duì)象,設(shè)置初始狀態(tài),裝載圖像,設(shè)計(jì)對(duì)數(shù)等22.為了系統(tǒng)安全,對(duì)JavaApplet小應(yīng)用程序有什么限制?30.某小應(yīng)用程序?qū)崿F(xiàn)幻燈片放映。小應(yīng)用程序的init()方法將幻燈片讀入數(shù)組中存儲(chǔ)和注冊(cè)鼠標(biāo)監(jiān)視器。程序運(yùn)行時(shí),單擊鼠標(biāo),就順序變換放映幻燈片的序號(hào)。這里給出的是其中的paint()方法和mousePressed()方法。paint()方法需要Graphics類型參數(shù),當(dāng)單擊鼠標(biāo)時(shí),要在paint()方法中再次顯示圖片,可以調(diào)用repaint()方法,使程序先清除paint()運(yùn)行的結(jié)果,再運(yùn)行paint();也可以調(diào)用update()方法,該方法會(huì)使系統(tǒng)自動(dòng)調(diào)用repaint()方法。finalintnumber=30;//假定幻燈片有30張paint()方法需要Graphics類型參數(shù),當(dāng)單擊鼠標(biāo)時(shí),要在paint()方法中再次顯示圖片,可以調(diào)用repaint()方法,使程序先清除paint()運(yùn)行的結(jié)果,再運(yùn)行paint();也可以調(diào)用update()方法,該方法會(huì)使系統(tǒng)自動(dòng)調(diào)用repaint()方法。intcount=0;Image[]pic=newImage[number];publicvoidpaint(______gc){if((pic[count])!=null)gc.drawImage(pic[count],10,10,pic[count].getWidth(this),pic[count].getHeight(this),this);}publicvoidmousePressed(MouseEvente){count=(count+1)%number;//循環(huán)逐張顯示__________;}32.閱讀下列程序,請(qǐng)寫(xiě)出該程序的輸出結(jié)果。importjava.applet.*;importjava.awt.*;classPoint{intx,y;Point(intxx,intyy){x=xx;y=yy;}Point(Pointp){x=p.x;y=p.y;}voidm(intdx,intdy){x+=dx;y+=dy;}}classCircleextendsPoint{intr;Circle(Pointp,intrr){super(p);r=rr;}floatc(){return3.14f*2.0f*r;}floata(){return3.14f*r*r;}}publicclasssampleextendsApplet{Circleyuan;Pointd;參考答案:yuanCircle62.8(2分)yuanArea314.0(2分)參考答案:yuanCircle62.8(2分)yuanArea314.0(2分)publicvoidpaint(Graphicsg){g.drawString("yuanCircle"+(int)(yuan.c()*100.0)/100.0,5,20);g.drawString("yuanArea"+(int)(yuan.a()*100.0)/100.0,5,40);}
}第4章數(shù)組和字符串簡(jiǎn)單應(yīng)用:非平衡的多維數(shù)組的創(chuàng)建,StringTokenizer類的用法,字符串與字節(jié)數(shù)組之間的轉(zhuǎn)換,對(duì)象的字符串表示綜合應(yīng)用:一維數(shù)組、二維數(shù)組、字符串的聲明和創(chuàng)建,字符串的常用處理方法,字符串與基本數(shù)據(jù)類型之間的轉(zhuǎn)換4.1數(shù)組1210-14.數(shù)組名如同對(duì)象名一樣,是一種__________。23.請(qǐng)寫(xiě)出聲明int類型的二維數(shù)組intArr的三種形式。IntintArr[][]Int[][]intArrInt[]intArr[]1110-14.?dāng)?shù)組每個(gè)元素按存儲(chǔ)順序?qū)?yīng)一個(gè)下標(biāo),下標(biāo)從___0____開(kāi)始順序編號(hào)4.在下述Java語(yǔ)言語(yǔ)句中,錯(cuò)誤的創(chuàng)建數(shù)組的方法是(D)A.intintArray[];intArray=newint[5];B.intintArray[]=newint[5];C.int[]intArray={1,2,3,4,5};D.intintArray[5]={1,2,3,4.5};1404-4.以下Java程序代碼中,能正確創(chuàng)建數(shù)組的是A.intmyArray[];myArray[]=newint[5];B.intmyArray[]=newmy(5);C.int[]myArray={1,2,3,4,5};D.intmyArray[5]={1,2,3,4,5};1201-23.請(qǐng)寫(xiě)出定義一個(gè)包含2個(gè)子數(shù)組的二維整型數(shù)組對(duì)象aArr的代碼,其中第一個(gè)子數(shù)組有5個(gè)元素,第二個(gè)子數(shù)組有3個(gè)元素。intaArr[][]=newint[2][];aArr[0]=newint[5];aArr[1]=newint[3];14.設(shè)有數(shù)組a和b的定義如下:int[]a={1,2,3};int[]b={4,5,6}……執(zhí)行以下代碼“a=b;”,除了完成賦值操作之外,引起系統(tǒng)額外要做的工作是_________。(P45)回收內(nèi)存(引用類型)0901-33.閱讀下列程序,請(qǐng)寫(xiě)出調(diào)用pascal(4)的輸出結(jié)果。staticvoidpascal(intn){intpas[];pas=newint[n];pas[0]=1;System.out.println(pas[0]);for(inti=2;i<=n;i++){/*由存儲(chǔ)在pas中的原來(lái)內(nèi)容生成新內(nèi)容*/pas[i-l]=1;1111111211331pas[j]=pas[j]+pas[j-1];for(intj=0;j<i;j++)System.out.print(pas[j]+"");System.out.println();}}0910-33.閱讀下列程序,請(qǐng)寫(xiě)出該程序的輸出結(jié)果。引用參數(shù)傳遞classTest33{staticvoids(intb[],intk){inti,j,t;for(i=1;i<k;i++){for(t=b[i],j=i-1;j>=0&&t<b[j];j--)b[j+l]=b[j];b[j+1]=t;}}publicstaticvoidmain(String[]args){inti,a[]={6,12,7,11,5};s(a,5);for(i=0;i<a.length;i++)System.out.print(a[i]+"");System.out.Println();}}56711121010-33.閱讀下列程序,請(qǐng)寫(xiě)出該程序的輸出結(jié)果。classTest33{staticintmerger(int[]a,int[]b,int[]c){inti=0,j=0,k=0;while(i<a.length&&j<b.length){if(a[i]<b[j])c[k++]=a[i++];elsec[k++]=b[j++];}while(i<a.length)c[k++]=a[i++];123569while(j<b.length)c[k++]=b[j++];123569returnk;}publicstaticvoidmain(String[]args){inta[]={3,6,9};intb[]={1,2,5};int[]c=newint[100];intp=merger(a,b,c);for(intk=0;k<p;k++)System.out.print(c[k]+(k<p-1?"":"\n"));}}0910-27.方法intsigmaEvenNum(int[]a)的功能是求已知數(shù)組中偶數(shù)的個(gè)數(shù)。staticintsigmaEvenNum(int[]a){ints=0;for(inti=0;______;i++){if(______)s++;}returns;}1001-27.方法voidmoveOddForword(inta[])的功能是將數(shù)組中的所有奇數(shù)移到所有偶數(shù)之前。voidmoveOddForword(inta[]){for(inti=0,odd=0;___i<a.length_____;i++)if(___a[i]%2==0_____){intt=a[i];a[i]=a[odd];a[odd]=t;odd++;}}1010-4.設(shè)有數(shù)組定義int[][]x={{1,2},{3,4,5},{6},{}};,則x.length的值為()A.3B.4C.60901-37.編寫(xiě)數(shù)組復(fù)制方法。該方法從已知平衡的兩維數(shù)組的左下角復(fù)制出一個(gè)非平衡的三角二維數(shù)組。設(shè)復(fù)制數(shù)組方法的模型為:publicstaticdouble[][]leftDownConer(double[][]anArray)publicstaticdouble[][]leftDownConer(double[][]anArray){ intl1=anArray.length; intl2=anArray[0].length; doubletemp[][]; if(l1<=l2){ temp=newdouble[l1][]; for(inti=0;i<l1;i++){ temp[i]=newdouble[i+1]; for(intj=0;j<i+1;j++) temp[i][j]=anArray[i][j]; } returntemp; }else{ temp=newdouble[l2][]; for(inti=0;i<l2;i++){ temp[i]=newdouble[i+1]; for(intj=0;j<i+1;j++) temp[i][j]=anArray[l1-l2+i][j]; } returntemp; } }0910-37.編寫(xiě)方法intsearchMaxNumIndex(int[]a),尋找已知數(shù)組中最大數(shù)的下標(biāo)并返回。 intsearchMaxNumIndex(int[]a){
inti,maxIndex;(1分)
for(i=maxIndex=0;i<a.length;i++){(2分)
if(a[i]>a[maxIndex])(1分)
maxIndex=i;(1分)
}
returnmaxIndex;(1分)
}37.編寫(xiě)一個(gè)方法halfArray(),要求該方法有一個(gè)元素類型為int的數(shù)組參數(shù),方法返回一個(gè)新數(shù)組,新數(shù)組的長(zhǎng)度與參數(shù)數(shù)組的長(zhǎng)度相同,而新數(shù)組元素的值是參數(shù)數(shù)組各元素的一半。(6分)[解析]本題考核知識(shí)點(diǎn)是面向?qū)ο蟪绦蛟O(shè)計(jì)中的方法設(shè)計(jì)。編寫(xiě)方法,需要確定方法名,已給出halfArray;再確定參數(shù)個(gè)數(shù)及類型,要求是一個(gè)int型數(shù)組參數(shù)即halfArray(int[]);再就是確定方法返回值類型,要求返回一個(gè)新數(shù)組,新數(shù)組元素類型要確定下來(lái),根據(jù)題意,新數(shù)組元素是參數(shù)數(shù)組相應(yīng)元素的一半,這一半應(yīng)該可能是小數(shù),所以方法頭應(yīng)該為
[解析]本題考核知識(shí)點(diǎn)是面向?qū)ο蟪绦蛟O(shè)計(jì)中的方法設(shè)計(jì)。編寫(xiě)方法,需要確定方法名,已給出halfArray;再確定參數(shù)個(gè)數(shù)及類型,要求是一個(gè)int型數(shù)組參數(shù)即halfArray(int[]);再就是確定方法返回值類型,要求返回一個(gè)新數(shù)組,新數(shù)組元素類型要確定下來(lái),根據(jù)題意,新數(shù)組元素是參數(shù)數(shù)組相應(yīng)元素的一半,這一半應(yīng)該可能是小數(shù),所以方法頭應(yīng)該為
float[]halfArray(int[])而不應(yīng)該是int[]halfAray(int[]),方法體中的一半也應(yīng)該是除以2.0。并轉(zhuǎn)換成float類型,方法體定義的數(shù)組b也應(yīng)該是float類型?;蛘叻祷刂殿愋秃蛿?shù)組b的類型都定義成double類型。float[]halfArray(int[]a){(1分)float[]b=newint[a.length];(2分)for(intk=0;k<a.length;k++){(2分)b[k]=float(a[k]/2.0);}returnb;(1分)}4.2字符串1001-14.Java語(yǔ)言提供了兩個(gè)用于處理字符串的類,它們是__________。String\StringBuffer14.設(shè)有兩個(gè)字符串對(duì)象str1和str2,則表達(dá)式“strl==str2”的意義是判別字符串strl和str2______。是否引用同一個(gè)對(duì)象1404-14.Java語(yǔ)言提供的用于處理不可改變的字符串類是______。String4.設(shè)有以下代碼:Stringsl="123";Strings2="123";Strings3=newString("123");則表達(dá)式s1==s2和s1==s3的值分別是()A.true,true B.false,falseC.true,false D.false,true14.已知字節(jié)數(shù)組b,取由b[i]開(kāi)始至b[j](其中j≥i≥0)結(jié)束的字節(jié)字符構(gòu)造一個(gè)字符串s,其語(yǔ)句為:Strings=newString(__b,I,j________);。14.設(shè)有字符串定義:Strings="ABCDABCD";則表達(dá)式s.indexOf("B")的值是_________。11101-4.以下代碼段的輸出結(jié)果是()Strings="JavaWorld";System.out.print(s.indexOf("a",4));A.-1B.OC.1D.41210-4.已知Strings="ABCDEFGHIJABC",以下說(shuō)法錯(cuò)誤的是A.s.indexOf("C")等于2 B.s.indexOf("EFG",2)等于4C.s.indexOf("A",7)等于10 D.s.indexOf("D",4)等于34.執(zhí)行下列程序語(yǔ)句后,b的值是Stringa=〃Hello〃;Stringb=a.substring(1,3);A.elB.HeC.ellD.Hel1110-4.在Java語(yǔ)言中,能夠?qū)崿F(xiàn)字符串連接的方法是()A.Stringsubstring(intstartpoint) B.Stringconcat(Strings)C.Stringreplace(charold,charnew) D.Stringtrim()1201-4.表達(dá)式"java程序設(shè)計(jì)".1ength()的值是()A.0B.12C.81201-15.要獲得對(duì)象的字符串表示,調(diào)用的方法是StringtoString()。1010-37.請(qǐng)編寫(xiě)方法intcountNum(Stringstr),該方法的功能是統(tǒng)計(jì)已知字符串str中數(shù)字的個(gè)數(shù)。例如,countNum("A42B83C2D")的返回值是5。33.閱讀下列程序,請(qǐng)寫(xiě)出該程序的功能。參考答案:程序獲得當(dāng)前日期,將日期的字符串表示輸出;(2分)截取日期字符串中從第11位開(kāi)始到字母‘參考答案:程序獲得當(dāng)前日期,將日期的字符串表示輸出;(2分)截取日期字符串中從第11位開(kāi)始到字母‘C’之前的部分字符串,并輸出。(2分)publicclassClass1{publicstaticvoidmain(Srtingargs[]){Datedate1=newDate();System.out.println(datel);Stringt=datel.toString();intendPos=t.indexOf(`C');t=t.substring(11,endPos);System.outprintln(t);}}4.以下是關(guān)于字符串運(yùn)算的代碼,執(zhí)行該代碼段的輸出結(jié)果是()Strings=″0123456789″,sl,s2;sl=s.substring(2);s2=s.substring(2,5);System.out.println(s1+s2);A.0122345 B.234567892345C.012234 D.23456789234java.util.StringTokenizer類用來(lái)把字符串分解為標(biāo)記。4.需要分析字符串,并將字符串分解成可被獨(dú)立使用的單詞,可使用java.util包中的類是()A.String B.StringBufferC.StringTokenizer D.stringTokenizer1001-33.閱讀下列程序,請(qǐng)寫(xiě)出該程序的功能。importjava.util.*;importjavax.swing.*;publicclassTest33{publicstaticvoidmain(Stringargs[]){Stringstr=(String)JOptionPane.showInputDialog(null,″請(qǐng)輸入信息″,″輸入對(duì)話框″,JOptionPane.PLAIN_MESSAGE,null,null,null);StringTokenizerpas=newStringTokenizer(str,″,″);intn=pas.countTokens();System.out.println(″輸入的信息有單詞:″+n+″個(gè),全部單詞如下:″);while(pas.hasMoreTokens()){Strings=pas.nextToken();System.out.println(s);}})答:在輸入對(duì)話框中輸入文字,并以多好作為分割符輸出單詞個(gè)數(shù),及各個(gè)單詞1010-14.使用默認(rèn)字節(jié)字符對(duì)應(yīng)表,將字符串轉(zhuǎn)化為字節(jié)數(shù)組的方法是______。getBytes()1001-37.請(qǐng)編寫(xiě)方法voidstrReverse(Stringstr),該方法的功能是輸出一個(gè)新字符串,新字符串字符排列順序與原字符串str的字符排列順序相反。例如,strReverse(″ABCD″)所輸出的結(jié)果是″DCBA″。請(qǐng)使用字符串與字節(jié)數(shù)組的相互轉(zhuǎn)換方法進(jìn)行設(shè)計(jì)。答:publicstaticvoidstrReverse(Stringstr){ byte[]s=str.getBytes(); Stringt=""; for(inti=s.length-1;i>=0;i--){ t+=(char)s[i]; } System.out.println(t);}第五章圖形界面設(shè)計(jì)(一)創(chuàng)建框架窗口的方法,設(shè)計(jì)標(biāo)簽、按鈕和按鈕事件的處理方法面板,布局設(shè)計(jì),文本框和文本區(qū)數(shù)據(jù)輸入和輸出的方法5.1圖形界面設(shè)計(jì)基礎(chǔ)領(lǐng)會(huì):AWT和Swing的基礎(chǔ)知識(shí),組件和容器,事件驅(qū)動(dòng)的概念5.能夠直接添加組件的Swing容器是A.JFrameB.JDialogC.JWindow DJPanel1404-5.某Java程序的類A要利用Swing創(chuàng)建框架窗口,則A需要繼承的類是A.JWindowB.JFrameC.JDialog D.JApplet5.以下關(guān)于AWT與Swing之間關(guān)系的敘述,正確的是()A.Swing是AWT的提高和擴(kuò)展B.在寫(xiě)GUI程序時(shí),AWT和Swing不能同時(shí)使用C.AWT和Swing在不同的平臺(tái)上都有相同的表示D.AWT中的類是從Swing繼承的15.一個(gè)基于Swing的應(yīng)用程序可能在任何平臺(tái)上都會(huì)有相同的______。外觀與風(fēng)格1010-5.在以下Swing的類中,屬于容器的是()A.JappletB.JbuttonC.JTextArea D.JMenu1101-5.以下不屬于AWT庫(kù)中定義的類是()A.ComponentB.ContainerC.ImagesD.Graphics1101-23.請(qǐng)寫(xiě)出JFrame、Frame以及Window這三個(gè)類的繼承關(guān)系(按照從父類到子類順序排列)。Window>frame>jframe1110-5.在以下供選擇的容器類中,屬于頂層容器的是()A.JDialogB.JPanelC.JScrollPane D.JToolBar1210-5.以下Swing提供的GUI組件類和容器類中,不屬于頂層容器的是A.JFrameB.JAppletC.JDialog D.JMenu2框架窗口綜合應(yīng)用:聲明JFrame的子類和創(chuàng)建JFrame窗口5.要為程序的子窗口設(shè)定一個(gè)由字符串s指定的名字,可以采用的代碼是()A.JFrame(s) B.window(s)C.newJFrame(s) D.super(s)5.在Swing中,它的子類能用來(lái)創(chuàng)建框架窗口的類是(B)A.JWindowB.JFrameC.JDialog D.JApplet1110-15.用Swing編寫(xiě)GUI程序時(shí),通常用__Jframe__類派生的子類創(chuàng)建窗口對(duì)象。24.請(qǐng)寫(xiě)出在JFrame框架窗口對(duì)象中添加組件的步驟。5.3標(biāo)簽、按鈕和按鈕事件簡(jiǎn)單應(yīng)用:聲明和創(chuàng)建按鈕標(biāo)簽綜合應(yīng)用:聲明和創(chuàng)建按鈕和按鈕事件的處理1210-15.為了讓監(jiān)視器與事件對(duì)象關(guān)聯(lián)起來(lái),需要對(duì)事件對(duì)象做__監(jiān)視器注冊(cè)____,告訴系統(tǒng)事件對(duì)象的監(jiān)視器。1404-23.請(qǐng)寫(xiě)出對(duì)事件對(duì)象作監(jiān)視器注冊(cè)的作用。1110-22.請(qǐng)寫(xiě)出Java語(yǔ)言中編寫(xiě)事件處理程序的兩種方案。1110-23.請(qǐng)寫(xiě)出代碼段,用來(lái)創(chuàng)建一個(gè)標(biāo)簽對(duì)象lbl,顯示文字為“Java”,背景色設(shè)為綠色。15.在實(shí)現(xiàn)接口ActionListener的方法actionPerformed()中,常用的有兩個(gè)獲得事件源的方法,它們是getActionCommand()和_________。getSource()1404-15.要使得已注冊(cè)的按鈕對(duì)象暫時(shí)不響應(yīng)事件,需使用的方法是______。setEnabled()1001-15.某程序用代碼“JTextFieldtext=newJTextField();”創(chuàng)建了一個(gè)文本框,并對(duì)這個(gè)文本框注冊(cè)了監(jiān)視器,則在監(jiān)視器處理方法actionPerformed(ActionEvente)中,判定是在這個(gè)文本框上發(fā)生事件的條件表達(dá)式是__________。e.getSource()==text1001-23.請(qǐng)寫(xiě)出Java語(yǔ)言編寫(xiě)事件處理程序的兩種主要方案。(P87)28.某程序的界面包含一個(gè)文本區(qū)text1、一個(gè)文本框text2和一個(gè)按鈕button。實(shí)現(xiàn)在文本區(qū)中輸入整數(shù)序列后,點(diǎn)擊按鈕,程序響應(yīng)按鈕事件,累計(jì)文本區(qū)輸入的整數(shù)序列,并將總和輸出在文本框中。這里給出的是其中相應(yīng)按鈕事件的方法。publicvoidactionPerformed(ActionEvente){intsum;if(e.getSource()==button){Strings=text1.________;//獲取text1中的信息StringTokenizerfenxi=newStringTokenizer(s,",,,\n");intn=fenxi.countTokens();doublea[]=newdouble[n];參考答案:
getText()
參考答案:
getText()
sum+=a[i]或sum=sum+a[i]Stringtemp=fenxi.nextToken();a[i]=Double.valueOf(temp).doubleValue();}sum=0;for(inti=0;i<n;i++){__________;}text2.setText(""+sum);//刷新顯示。}0910-28.某小應(yīng)用程序窗口包含有文本區(qū)dispArea,以及一個(gè)帶文字“追加”的按鈕。當(dāng)點(diǎn)擊這個(gè)按鈕時(shí),程序彈出一個(gè)輸入信息的對(duì)話框,并將對(duì)話框中輸入的內(nèi)容追加到文本區(qū)中。以下是其中相應(yīng)“追加”按鈕事件的方法。publicvoidactionPerformed(ActionEvente){if(e.______.equals("追加")){Stringresult=(String)JOptionPane.showInputDialog(null,"請(qǐng)輸入信息","輸入對(duì)話框",JOptionPane.PLAIN_MESSAGE,null,null,null);dispArea.______(result+"");getActionCommand()
getActionCommand()
append}1010-28.某小應(yīng)用程序窗口中有一個(gè)文本框,一個(gè)8行10列的文本區(qū)以及一個(gè)按鈕,點(diǎn)擊這個(gè)按鈕時(shí),在文本框中輸入的內(nèi)容會(huì)追加到文本區(qū)中。importjava.applet.*;importjavax.swing.*;importjava,awt.event.*;publicclassTextAPPextendsAppletimplementsActionListener{JTextFieldinput;JTextAreadisplay;JButtonappend;publicvoidinit(){input=newJTextField(10);display=new;append=newJButton("追加");add(input);add(display);add(append);input.requestFocus();display.setLineWrap(true);append.addActionListener(this);}publicvoidactionPerformed(ActionEvente),{display.(input.getText()+"");}}5.4面板綜合應(yīng)用:聲明JPanel類的子類,創(chuàng)建JPanel對(duì)象簡(jiǎn)單應(yīng)用:聲明JScrollPane類的子類,創(chuàng)建JScrollPane對(duì)象1010-15.在Swing中,帶有滾動(dòng)條的面板的類名是______。JScrollPane1101-15.在Swing中,面板有兩種,一種是JPanel,另一種是__JScrollPane____。5.5布局設(shè)計(jì)綜合應(yīng)用:FlowLayout,BorderLayout,Cardlayout,GridLayout布局設(shè)計(jì)策略設(shè)計(jì)界面識(shí)記:null布局與setBounds方法1201-24.請(qǐng)寫(xiě)出創(chuàng)建一個(gè)JPanel對(duì)象p,并為對(duì)象p設(shè)定GridLayout布局的代碼。JPanelp=newJPanel();p.setLayout(newGridLayout());15.將容器區(qū)域分成東、南、西、北、中五個(gè)區(qū)域的布局類是_BorderLayout_____。5.以下是關(guān)于FlowLayout布局組件排列順序的敘述,正確的是()A.從上到下排列 B.從左到右排列C.從下到上排列 D.從右到左排列1201-5.以下關(guān)于BorderLayout布局的敘述中,不正確的是()A.把容器內(nèi)的空間劃分成5個(gè)區(qū)域 B.加入組件應(yīng)該指明要放入的區(qū)域C.是框架窗口的默認(rèn)布局 D.一個(gè)位置可直接放多個(gè)組件34.閱讀下列程序,請(qǐng)用示意圖畫(huà)出程序運(yùn)行時(shí)呈現(xiàn)的界面。importjava.applet.*;importjava.awt*;importjavax.swing.*;classMyPanelextendsJPanel{JButtonbutton;JLabellabel;MyPanel(Strings1,Strings2){this.setLayout(newGridLayout(2,2));button=newJButton(s1);label=newJLabel(s2,JLabel.CENTER);add(button);add(label);add(newJLabel());}}publicclassClass1{publicstaticvoidmain(Stringargs[]){JFramemw=newJFrame("一個(gè)示意窗口");mw.setSize(400,250);Containercon=mw.getContentPane();con.setLayout(newBorderLayout());MyPanelpanel1,panel2;panel1=newMyPanel("按鈕1","標(biāo)簽1");panel2=newMyPanel("按鈕2","標(biāo)簽2");JButtonbutton=newJButton("開(kāi)始按鈕");con.add(panel1,"North");con.add(panel2,"South");con.add(button,"Center");mw.setVisible(true);}}1001-34.閱讀下列程序,請(qǐng)用示意圖畫(huà)出程序運(yùn)行時(shí)呈現(xiàn)的界面。importjava.applet.*;importjava.awt.*;importjavax.swing.*;classMyPanelextendsJPanel{JTextFieldtextl,text2;MyPanel(Stringsl,Strings2){textl=newJTextFieId(s1);text2=newJTextField(s2);add(text1);add(text2);}}classMySubPanelextendsMyPanel{JTextFieldtext;MySubPanel(Stringsl,Strings2,Strings3){super(s1,s2);text=newJTextField(s3);add(text);}}publicclassTest34{publicstaticvoidmain(Stringargs[]){JFramemw=newJFrame(″一個(gè)示意窗口″);mw.setSize(350,150);Containercon=mw.getContentPane();con.setLayout(newBorderLayout());MyPanelpl=newMyPanel(″文本框l″,″文本框2″);MySubPanelp2=newMySubPanel(″文本框3″,″文本框4″,″文本框5″);JTextAreatext=newJTextArea(″這里是一個(gè)文本區(qū)″);con.add(pl,″North″);con.add(p2,″South″);con.add(text,″Center″);mw.setVisible(true);}}6文本框和文本區(qū)綜合應(yīng)用:聲明和創(chuàng)建文本框,處理文本框事件和在文本框中輸入輸出數(shù)據(jù)聲明和創(chuàng)建文本區(qū)域,將文本區(qū)域放置于滾動(dòng)面板,在文本框中輸入輸出數(shù)據(jù)23.請(qǐng)寫(xiě)出程序處理文本框輸入結(jié)束事件(回車)添加監(jiān)視器的方法,以及監(jiān)視器類必須實(shí)現(xiàn)的接口方法。參考答案:(P102)為對(duì)象添加監(jiān)視器的方法是addActionListener;類必須實(shí)現(xiàn)的方法是
publicvoidactionPerformed(ActionEvente)。34.閱讀下列程序,請(qǐng)寫(xiě)出該程序的功能。importjava.applet.*;importjavax.swing.*;importjava.awt.event.*;publicclassClasslextendsAppletimplementsActionListener{JTextFieldtext1,text2;publicvoidinit(){text1=newJTextField(10);text2=newJTextField(10);setSize(200,100);add(text1);add(text2);text1.addActionListener(this);}publicvoidactionPerformed(ActionEvente){在第一個(gè)文本框輸入數(shù)據(jù),輸入結(jié)束(回車)后,(2分)在第二個(gè)文本框輸出該整數(shù)的平方。(2分)longn;在第一個(gè)文本框輸入數(shù)據(jù),輸入結(jié)束(回車)后,(2分)在第二個(gè)文本框輸出該整數(shù)的平方。(2分)if(e.getSource()==text1){n=Long.parseLong(text1.getText());text2.setText(String.valueOf(n*n));}}}1010-34.閱讀下列程序,請(qǐng)寫(xiě)出該程序的功能。importjava.awt.*;importjavax.swing.*;importjava.applet.*;importjava.awt.event.*;publicclassClasslextendsAppletimplementsActionListener{JTextFieldTextI=newJTextField(5);JTextFieldText2=newJTextField(5);JTextFieldText3=newJTextField(5);JLabelLabel1=newJLabel("Pleaseinputthreenumbers:");JLabelLabel2=newJLabel("");JButtonbut=newJButton("Start!");publicvoidinit(){setLayout(newGridLayout(6,1));add(Label1);add(Textl);add(Text2);add(Text3);add(but);add(Label2);Label2.setFont(newFont("Courier",1,20));but.addActionListener(this);}publicvoidactionPerformed(ActionEvente){inta,b,c;a=Integer.parseInt(Text1.getText());b=Integer.parselnt(Text2.getText());c=Integer.parselnt(Text3.getText());if(a+b<c||b+c<a||c+a<b){Label2.setForeground(Color.red);Label2.setFont(newFont("Courier",1,24));Label2.setText("No.");}else{Label2.setForeground(Color.blue);Label2.setFont(newFont("Courier",2,24));Label2.setText("Yes.");}}}38.一個(gè)Java小應(yīng)用程序,界面有三個(gè)文本框和兩個(gè)按鈕,前兩個(gè)文本框用于輸入整數(shù),第三個(gè)文本框用于輸出結(jié)果。兩個(gè)按鈕分別表示加和減運(yùn)算。當(dāng)前兩個(gè)文本框輸入整數(shù)后,點(diǎn)擊相應(yīng)按鈕,程序就將計(jì)算結(jié)果輸出在第三個(gè)文本框中。以下是程序的大部分,其中監(jiān)視按鈕事件的方法未給出,試編寫(xiě)處理按鈕事件的方法。注:這里是給定部分的程序,你要編寫(xiě)的是actionPerformed(ActionEvente)方法。importjava.applet.*;importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;classPanel1extendsJPanel{JTextFieldtext1,text2,text3;JButtonaddButton,subButton;Panel1(){text1=newJTextField(10);text2=newJTextField(10);text3=newJTextField(10);setLayout(newGridLayout(5,1));addButton=newJButton("加");subButton=newJButton("減");add(text1);add(text2);add(text3);add(addButton);add(subButton);}}publicclassClasslextendsAppletimplementsActionListener{Pane1panel;//持有需訪問(wèn)對(duì)象的引用publicvoidinit(){setSize(100,200);panel=new
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 金川安全文化
- 間位結(jié)腸影像診斷
- 2025商業(yè)店鋪正規(guī)交易合同范本
- 軌道設(shè)備轉(zhuǎn)讓合同范本
- 修路土地流轉(zhuǎn)合同范本
- 車輛無(wú)償使用租賃合同
- 腸內(nèi)外營(yíng)養(yǎng)的支持及護(hù)理
- 二零二五版授信擔(dān)保合同范例
- 干部培訓(xùn)規(guī)劃案
- 公司員工股份協(xié)議書(shū)
- “燕園元培杯”2023-2024學(xué)年全國(guó)中學(xué)生地球科學(xué)奧林匹克競(jìng)賽決賽試題詳解
- 湖北省漢陽(yáng)一中、江夏一中、洪山高中2024-2025學(xué)年高一下學(xué)期3月聯(lián)考化學(xué)試卷 含解析
- 消防隊(duì)伍廉潔警示教育
- 總體概述:施工組織總體設(shè)想、方案針對(duì)性及施工段劃分
- 護(hù)理安全與護(hù)理質(zhì)量管理課件
- 涉密和非涉密計(jì)算機(jī)保密管理制度
- DB32T 5061.1-2025中小學(xué)生健康管理技術(shù)規(guī)范 第1部分:心理健康
- 2025年吉林司法警官職業(yè)學(xué)院?jiǎn)握新殬I(yè)傾向性考試題庫(kù)含答案
- 2025年開(kāi)封大學(xué)單招職業(yè)適應(yīng)性考試題庫(kù)帶答案
- 國(guó)際合作與中外合拍片的發(fā)展現(xiàn)狀
- 統(tǒng)編版語(yǔ)文二年級(jí)下冊(cè)第三單元 復(fù)習(xí)課件
評(píng)論
0/150
提交評(píng)論