版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、習(xí)題1(第1章)一、問答題1 .Java語言的主要貢獻(xiàn)者是誰?2 .開發(fā)Java應(yīng)用程序需要經(jīng)過哪些主要步驟?3 .Java源文件是由什么組成的?一個源文件中必須要有public類嗎?4 .如果JDK的安裝目錄為D:jdk,應(yīng)當(dāng)怎樣設(shè)置path和classpath的值?5 .Java源文件的擴(kuò)展名是什么?Java字節(jié)碼的擴(kuò)展名是什么?6 .如果Java應(yīng)用程序主類的名字是Bird,編譯之后,應(yīng)當(dāng)怎樣運行該程序?7 .有哪兩種編程風(fēng)格,在格式上各有怎樣的特點?1. JamesGosling2. 需3個步驟:1)用文本編輯器編寫源文件。2)使用javac編譯源文件,得到字節(jié)碼文件。3)使用解釋器運
2、行程序。args)3. 源文件由若干個類所構(gòu)成。對于應(yīng)用程序,必須有一個類含有publicstaticvoidmain(String的方法,含有該方法的類稱為應(yīng)用程序的主類。不一定,但至多有一個public類。4. setclasspath=D:jdkjrelib;.;5. java和class6. javaBird7. 獨行風(fēng)格(大括號獨占行)和行尾風(fēng)格(左大擴(kuò)號在上一行行尾,右大括號獨占行)二、選擇題1. Bo2.D=1 .下列哪個是JDK提供的編譯器?A)B)C)D)2 .下列哪個是Java應(yīng)用程序主類中正確的main方法?A) publicvoidmain(Stringargs)B)
3、staticvoidmain(Stringargs)C) publicstaticvoidMain(Stringargs)D) publicstaticvoidmain(Stringargs)三、閱讀程序閱讀下列Java源文件,并回答問題。publicclassPersonvoidspeakHello()classXitipublicstaticvoidmain(Stringargs)Personzhang=newPerson();();(a)上述源文件的名字是什么?(b)編譯上述源文件將生成幾個字節(jié)碼文件?這些字節(jié)碼文件的名字都是什么?(c)在命令行執(zhí)行javaPerson得到怎樣的錯誤提示
4、?執(zhí)行javaxiti得到怎樣的錯誤提示?執(zhí)行java得到怎樣的錯誤提示?執(zhí)行javaXiti得到怎樣的輸出結(jié)果?1.(a)。(b)兩個字節(jié)碼,分別是和。(c)得至U"NoSuchMethodError",得至U"NoClassDefFoundError:Xiti/class",得到“您好,很高興認(rèn)識您nicetomeetyou"習(xí)題2(第2章)一、問答題1. 什么叫標(biāo)識符?標(biāo)識符的規(guī)則是什么?false是否可以作為標(biāo)識符。2. 什么叫關(guān)鍵字?true和false是否是關(guān)鍵字?請說出6個關(guān)鍵字。3. Java的基本數(shù)據(jù)類型都是什么?4. flo
5、at型常量和double型常量在表示上有什么區(qū)別?5. 怎樣獲取一維數(shù)組的長度,怎樣獲取二維數(shù)組中一維數(shù)組的個數(shù)。1. 用來標(biāo)識類名、變量名、方法名、類型名、數(shù)組名、文件名的有效字符序列稱為標(biāo)識符。標(biāo)識符由字母、下劃線、美元符號和數(shù)字組成,第一個字符不能是數(shù)字。false不是標(biāo)識符。2. 關(guān)鍵字就是Java語言中已經(jīng)被賦予特定意義的一些單詞,不可以把關(guān)鍵字作為名字來用。true和false不是關(guān)鍵字。6個關(guān)鍵字:classimplementsinterfaceenumextendsabstract。3. boolean,char,byte,short,int,long,float,double
6、。4. float常量必須用F或f為后綴。double常量用D或d為后綴,但允許省略后綴。5. 一維數(shù)組名.length。二維數(shù)組名.length。二、選擇題2,下列哪三項是正確的float變量的聲明?adfA. floatfoo=-1;B. floatfoo=;C. floatfoo=42e1;D. floatfoo=;E. floatfoo=;F. floatfoo=0x0123;3 .下列哪一項敘述是正確的?b0 至 327670 至 655350 至 65536-32768 至 32767A. char型字符在Unicode表中的位置范圍是B. char型字符在Unicode表中的位置
7、范圍是C. char型字符在Unicode表中的位置范圍是D. char型字符在Unicode表中的位置范圍是4 .以下哪兩項是正確的char型變量的聲明?beA. charch="R"B. charch=''C. charch='ABCD'D. charch="ABCD"E. charch='ucafe'F. charch='u10100'5 .下列程序中哪些【代碼】是錯誤的?2345publicclassEpublicstaticvoidmain(Stringargs)intx=8;by
8、teb=127;的值是3。B. a1的值是1。C. a0的值是0。D. a口的值等于a2的值。1. Co2.ADE3.Bo4.BE=5.【代碼2】【代碼3】【代碼4】【代碼5】。6.B。三、閱讀或調(diào)試程序1 .屬于操作題,解答略。2 .屬于操作題,解答略。3 .屬于操作題,解答略。4 .下列程序標(biāo)注的【代碼1】,【代碼2】的輸出結(jié)果是什么?publicclassEpublicstaticvoidmain(Stringargs)long口a=1,2,3,4;long口b=100,200,300,400,500;b=a;5 .下列程序標(biāo)注的【代碼1】,【代碼2】的輸出結(jié)果是什么?publiccla
9、ssEpublicstaticvoidmain(Stringargs)inta=10,20,30,40,b=1,2,4,5,6,7;b0=a;b01=b13;4 .【代碼1】:4。【代碼2:b0=1。5 .【代碼1】:40?!敬a2】:7四、編寫程序1 .編寫一個應(yīng)用程序,給出漢字你、我、他在Unicode表中的位置。2 .編寫一個Java應(yīng)用程序,輸出全部的希臘字母。"|1. publicclassEpublicstaticvoidmain(Stringargs)你);我);他);2. publicclassEpublicstaticvoidmain(Stringargs)char
10、cStart='a',cEnd='3'for(charc=cStart;c<=cEnd;c+)一、問答題1 .關(guān)系運算符的運算結(jié)果是怎樣的數(shù)據(jù)類型?2 .if語句中的條件表達(dá)式的值是否可以是int型?3 .while語句中的條件表達(dá)式的值是什么類型?4 .switch語句中必須有default選項碼?5 .在while語句的循環(huán)體中,執(zhí)行break語句的效果是什么?6 .可以用for語句代替while語句的作用嗎?1 .boolean2 .不可以3 .boolean4 .不是必須的5 .結(jié)束while語句的執(zhí)行6 .可以二、選擇題1 .下列哪個敘述是正確的
11、?aA. 2+10的結(jié)果是double型數(shù)據(jù)。B. (int)+的結(jié)果是int型數(shù)據(jù)。C.蘋'+'果的結(jié)果是char型數(shù)據(jù)。D.(short)10+'a'的結(jié)果是short型數(shù)據(jù)。2 .用下列哪個代碼替換程序標(biāo)注的【代碼】會導(dǎo)致編譯錯誤?cA.m->0B.m+>0C.m=0D.m>100&&truepublicclassEpublicstaticvoidmain(Stringargs)intm=10,n=0;while(【代碼】)n+;3 .假設(shè)有intx=1;以下哪個代碼導(dǎo)致“可能損失精度,找到int需要char”這樣的編譯錯
12、誤。A.shortt=12+'a'B.charc='a'+1;C.charm='a'+x;D.byten='a'+1;1.Ao三、閱讀程序1 .下列程序的輸出結(jié)果是什么?publicclassEpublicstaticvoidmain(Stringargs)charx='你',y='e',z='吃';if(x>'A')y='蘋';z='果';elsey='酸';z='甜;2 .下列程序的輸出結(jié)果是什么?pu
13、blicclassEpublicstaticvoidmain(Stringargs)charc='0'for(inti=1;i<=4;i+)switch(i)case 1: c='J'case 2: c='e'break;case 3: c='p'3 .下列程序的輸出結(jié)果是什么?publicclassEpublicstaticvoidmain(String口args)intx=1,y=6;while(y->0)x-;x=0,y=5x=-1,y=4x=-2,y=3x=-3,y=2x=-4,y=1x=-5,y=0x=-5,
14、y=-11. 你,蘋,甜2. Jeep好好3. x=-5,y=-1四、編程序題1 .編寫應(yīng)用程序求1!+2!+,+10!o2 .編寫一個應(yīng)用程序求100以內(nèi)的全部素數(shù)。3 .分別用do-while和for循環(huán)計算1+1/2!+1/3!+1/4!的前20項和。4 .一個數(shù)如果恰好等于它的因子之和,這個數(shù)就稱為“完數(shù)”。編寫應(yīng)用程序求1000之內(nèi)的所有完數(shù)。5 .編寫應(yīng)用程序,使用for循環(huán)語句計算8+88+888前10項之和。6 .編寫應(yīng)用程序,輸出滿足1+2+3+n<8888的最大正整數(shù)n。1 .publicclassXiti1publicstaticvoidmain(Stringarg
15、s口)doublesum=0,a=1;inti=1;while(i<=20)sum=sum+a;i+;a=a*i;)2 .publicclassXiti2publicstaticvoidmain(Stringargs口)inti,j;for(j=2;j<=100;j+)for(i=2;i<=j/2;i+)if(j%i=0)break;)if(i>j/2)3 classXiti3publicstaticvoidmain(Stringargs)doublesum=0,a=1,i=1;dosum=sum+a;i+;a=i)*a;while(i<=20);for(sum=
16、0,i=1,a=1;i<=20;i+)a=a*i);sum=sum+a;4 publicclassXiti4publicstaticvoidmain(Stringargs)intsum=0,i,j;for(i=1;i<=1000;i+)for(j=1,sum=0;j<i;j+)if(i%j=0)sum=sum+j;if(sum=i)5 publicclassXiti5publicstaticvoidmain(Stringargs)intm=8,item=m,i=1;longsum=0;for(i=1,sum=0,item=m;i<=10;i+)sum=sum+item;
17、item=item*10+m;6 publicclassXiti6publicstaticvoidmain(Stringargs)intn=1;longsum=0;while(true)sum=sum+n;n+;if(sum>=8888)break;習(xí)題4(第4章)一、問答題1 .面向?qū)ο笳Z言有哪三個特性?2 .類名應(yīng)當(dāng)遵守怎樣的編程風(fēng)格?3 .變量和方法的名字應(yīng)當(dāng)遵守怎樣的編程風(fēng)格?4 .類體內(nèi)容中聲明成員變量是為了體現(xiàn)對象的屬性還是行為?5 .類體內(nèi)容中定義的非構(gòu)造方法是為了體現(xiàn)對象的屬性還是行為?6 .什么時候使用構(gòu)造方法?構(gòu)造方法有類型嗎?7 .類中的實例變量在什么時候會被分配內(nèi)
18、存空間?8 .什么叫方法的重載?構(gòu)造方法可以重載嗎?9 .類中的實例方法可以操作類變量(static變量)嗎?類方法(static方法)可以操作實例變量嗎?可以。不可以。10 .類中的實例方法可以用類名直接調(diào)用嗎?8. 一個類中可以有多個方法具有相同的名字,但這些方法的參數(shù)必須不同,即或者是參數(shù)的個數(shù)不同,或者是參數(shù)的類型不同??梢?。9.10,不可以。11 .簡述類變量和實例變量的區(qū)別。12 .this關(guān)鍵字代表什么?this可以出現(xiàn)在類方法中嗎?1 .封裝、繼承和多態(tài)。2 .當(dāng)類名由幾個單詞復(fù)合而成時,每個單詞的首字母使用大寫。3 .名字的首單詞的首字母使用小寫,如果變量的名字由多個單詞組成
19、,從第2個單詞開始的其它單詞的首字母使用大寫。4 .屬性5 .行為6 .用類創(chuàng)建對象時。沒有類型7 .用類創(chuàng)建對象時。8 .一個類中可以有多個方法具有相同的名字,但這些方法的參數(shù)必須不同,即或者是參數(shù)的個數(shù)不同,或者是參數(shù)的類型不同??梢浴?,可以。不可以。10,不可以。11 .一個類通過使用new運算符可以創(chuàng)建多個不同的對象,不同的對象的實例變量將被分配不同的內(nèi)存空間。所有對象的類變量都分配給相同的一處內(nèi)存,對象共享類變量。12 .代表調(diào)用當(dāng)前方法的對象。不可以。二、選擇題1 .下列哪個敘述是正確的?bA. Java應(yīng)用程序由若干個類所構(gòu)成,這些類必須在一個源文件中。B. Java應(yīng)用程序由
20、若干個類所構(gòu)成,這些類可以在一個源文件中,也可以分布在若干個源文件中,其中必須有一個源文件含有主類。C. Java源文件必須含有主類。D. Java源文件如果含有主類,主類必須是public類。2,下列哪個敘述是正確的?dA.成員變量的名字不可以和局部變量的相同。B.方法的參數(shù)的名字可以和方法中聲明的局部變量的名字相同。C.成員變量沒有默認(rèn)值。D.局部變量沒有默認(rèn)值。3 .對于下列Hello類,哪個敘述是正確的?dA. Hello類有2個構(gòu)造方法。B. Hello類的intHello()方法是錯誤的方法。C. Hello類沒有構(gòu)造方法。D. Hello無法通過編譯,因為其中的hello方法的方
21、法頭是錯誤的(沒有類型)。classHelloHello(intm)intHello()return20;hello()4 .對于下列Dog類,哪個敘述是錯誤的?dA. Dog(intm)與Dog(doublem)互為重載的構(gòu)造方法。B. intDog(intm)與voidDog(doublem)互為重載的非構(gòu)造方法。C. Dog類只有兩個構(gòu)造方法,而且沒有無參數(shù)的構(gòu)造方法。D. Dog類有3個構(gòu)造方法。classDogDog(intm)Dog(doublem)intDog(intm)return23;voidDog(doublem)構(gòu)造方法是一種特殊的方法,與一般的方法不同是:1 .構(gòu)造方法
22、的名字必須與定義他的類名完全相同,沒有返回類型,甚至連void也沒有。2 .構(gòu)造方法的調(diào)用是在創(chuàng)建一個對象時使用new操作進(jìn)行的。構(gòu)造方法的作用是初始化對象。3 .不能被static、final、synchronized、abstract和native修飾。構(gòu)造方法不能被子類繼承。5 .下列哪些類聲明是錯誤的?cdA) classAB) publicclassAC) protectedclassAD) privateclassA6 .下列A類中【代碼1】【代碼5】哪些是錯誤的?14classTomprivateintx=120;protectedinty=20;intz=11;privatev
23、oidf()x=200;voidg()x=200;publicclassApublicstaticvoidmain(Stringargs口)Tomtom=newTom();=22;LakeLake.x)274 .【代碼1】:100,【代碼2】:。5 .上機實習(xí)題目,解答略。6 .上機實習(xí)題目,解答略。四、編程題用類描述計算機中CPU的速度和硬盤的容量。要求Java應(yīng)用程序有4個類,名字分別是PC,CPUffiHardDisk和Test,其中Test是主類。PC類與CPU和HardDisk類關(guān)聯(lián)的UML0(圖)其中,CPUt要求getSpeed()返回speed的值;要求setSpeed(int
24、m)方法將參數(shù)m的值賦值給speed。HardDisk類要求getAmount()返回amount的值,要求setAmount(intm)方法將參數(shù)m的值賦值給amount。PC類要求setCUP(CPUc)將參數(shù)c的值賦值給cpu,要求setHardDisk(HardDiskh)方法將參數(shù)h的值賦值給HD要求show()方法能顯示cpu的速度和硬盤的容量。主類Test的要求main方法中創(chuàng)建一個main方法中創(chuàng)建一個main方法中創(chuàng)建一個CPUX寸象cpu,cpu將自己的speed設(shè)置為2200,HardDisk對象disk,disk將自己的amount設(shè)置為200,PC對象pc,pc調(diào)用s
25、etCUP(CPUc)方法,調(diào)用時實參是cpu,pc調(diào)用setHardDisk(HardDiskh)方法,調(diào)用時實參是disk,pc調(diào)用show()方法。publicclassCPUspeed:intsetSpeed(int):voidgetSpeed():intHardDiskamount:intsetAmount(int):voidgetAmount():intCPUintspeed;圖PC與CPUWHardDisk關(guān)聯(lián)UML®intgetSpeed()returnspeed;publicvoidsetSpeed(intspeed)=speed;publicclassHardDi
26、skintamount;intgetAmount()returnamount;publicvoidsetAmount(intamount)=amount;publicclassPCCPUcpu;HardDiskHD;voidsetCPU(CPUcpu)=cpu;voidsetHardDisk(HardDiskHD)=HD;voidshow()publicclassTestpublicstaticvoidmain(Stringargs)CPUcpu=newCPU();HardDiskHD=newHardDisk();(2200);(200);PCpc=newPC();(cpu);(HD);();
27、習(xí)題5(第5章)一、問答題1 子類可以有多個父類嗎?2 包中的Object類是所有其他類的祖先類嗎?3如果子類和父類不在同一個包中,子類是否繼承父類的友好成員?4子類怎樣隱藏繼承的成員變量?5子類重寫方法的規(guī)則是怎樣的?重寫方法的目的是什么?6 .父類的final方法可以被子類重寫嗎?7 .什么類中可以有abstract方法?8 .對象的上轉(zhuǎn)型對象有怎樣的特點?9 .一個類的各個子類是怎樣體現(xiàn)多態(tài)的?10 .面向抽象編程的目的和核心是什么?1 .不可以。2 .是。3 .不繼承。4 .聲明與父類同名的成員變量。5 .子類重寫的方法類型和父類的方法的類型一致或者是父類的方法的類型的子類型,重寫的方
28、法的名字、參數(shù)個數(shù)、參數(shù)的類型和父類的方法完全相同。重寫方法的目的是隱藏繼承的方法,子類通過方法的重寫可以把父類的狀態(tài)和行為改變?yōu)樽陨淼臓顟B(tài)和行為。6 .不可以。7 .abstract類。8 .上轉(zhuǎn)型對象不能操作子類新增的成員變量,不能調(diào)用子類新增的方法。上轉(zhuǎn)型對象可以訪問子類繼承或隱藏的成員變量,可以調(diào)用子類繼承的方法或子類重寫的實例方法。9 .通過重寫方法。10 .面向抽象編程目的是為了應(yīng)對用戶需求的變化,核心是讓類中每種可能的變化對應(yīng)地交給抽象類的一個子類類去負(fù)責(zé),從而讓該類的設(shè)計者不去關(guān)心具體實現(xiàn)。二、選擇題1 .下列哪個敘述是正確的?cE.子類繼承父類的構(gòu)造方法。F.abstract
29、類的子類必須是非abstract類。G.子類繼承的方法只能操作子類繼承和隱藏的成員變量。H.子類重寫或新增的方法也能直接操作被子類隱藏的成員變量。2,下列哪個敘述是正確的?dA. final類可以有子類。B. abstract類中只可以有abstract方法。C. abstract類中可以有非abstract方法,但該方法不可以用final修飾。D.不可以同時用final和abstract修飾同一個方法。E.允許使用static修(aabstract方法。用final修飾的類是不允許被繼承的,A錯誤?abstract類中也可以有普通成員方法,B錯誤?abstract類中的非abstract方法
30、是可以用final修飾的,而abstract方法是不可以被final修飾的,C錯誤?D同上,所以正確?不允許使用static修飾abstract方法,E錯誤。3.下列程序中注釋的哪兩個代碼(A,B,C,D)是錯誤的(無法通過編譯)?cdclassFatherprivateintmoney=12;floatheight;intseeMoney()returnmoney;1.78F列代碼中標(biāo)注的(A,B,C,D)中,哪一個是錯誤的?babstractclassTakecareprotectedvoidspeakHello()1.0fpublicfloatgetNum()return4.0f;B.
31、publicvoidgetNum()C. publicvoidgetNum(doubled)D. publicdoublegetNum(floatd)return;classApublicfloatgetNum()return3.0f;publicclassBextendsA【代碼】9對于下列代碼,下列哪個敘述是正確的?aA. 程序提示編譯錯誤(原因是A類沒有不帶參數(shù)的構(gòu)造方法)B. 編譯無錯誤,【代碼】輸出結(jié)果是0。C. 編譯無錯誤,【代碼】輸出結(jié)果是1。D. 編譯無錯誤,【代碼】輸出結(jié)果是2。classApublicinti=0;A(intm)1 =1;publicclassBextend
32、sAB(intm)i=2;publicstaticvoidmain(Stringargs)Bb=newB(100);1C。2D。3CD。4D。5B。6B。7D。8B。9A。三、閱讀程序1 請說出E類中【代碼1】,【代碼2】的輸出結(jié)果。classAdoublef(doublex,doubley)returnx+y;classBextendsAdoublef(intx,inty)returnx*y;publicclassEpublicstaticvoidmain(Stringargs)Bb=newB();2 .說出下列B類中【代碼1】,【代碼2】的輸出結(jié)果。classApublicintgetNu
33、mber(inta)returna+1;classBextendsApublicintgetNumber(inta)returna+100;publicstaticvoidmain(Stringargs口)Aa=newA();a=newB();3 .請說出E類中【代碼1】【代碼4】的輸出結(jié)果。classAdoublef(doublex,doubley)returnx+y;staticintg(intn)returnn*n;classBextendsAdoublef(doublex,doubley)doublem=(x,y);returnm+x*y;staticintg(intn)intm=(n
34、);returnm+n;publicclassEpublicstaticvoidmain(Stringargs口)Bb=newB();Aa=newB();4 .請說出E類中【代碼1】【代碼3】的輸出結(jié)果。classAintm;intgetM()returnm;intseeM()returnm;classBextendsAintm;intgetM()returnm+100;publicclassEpublicstaticvoidmain(Stringargs口)Bb=newB();=20;Aa=b;圖UML類圖C.如果一個非抽象類實現(xiàn)某個接口,那么它可以只重寫接口中的部分方法。D.允許接口中只有
35、一個抽象方法。非抽象類實現(xiàn)接口必須要重寫接口中的全部方法,否則要把該類設(shè)置為抽象類,換句話說抽象類實現(xiàn)一個接口是可以不用重寫接口中的全部方法的。2.下列接口中標(biāo)注的(A,B,C,D)中,哪兩個是錯誤的?abinterfaceTakecare圖UML類圖speakHello();publicclassEpublicstaticvoidmain(Stringargs)Scannerreader=newScanner;doublesum=0;intm=0;while()doublex=();assertx<100:"數(shù)據(jù)不合理";m=m+1;sum=sum+x;習(xí)題8(第8
36、章)一、問答題1. "hello"是正確的字符串常量嗎?2. "你好KU".length()和"ntt".length()的值分別是多少?3. "Hello".equals("hello")和"java".equals("java")的值分別是多少?4. "Bird"pareTo("Birdfly")的值是正數(shù)還是負(fù)數(shù)?負(fù)數(shù)。String對象調(diào)用compareTo(Strings)方法,按字典序與指定的String對
37、象s的字符序列比較大小。如果當(dāng)前String對象的字符序列與s的相同,該方法返回0;如果大于s的字符序列,該方法返回正值,如果小于s的字符序列,該方法返回負(fù)值。5. "Ilovethisgame".contains("love")的值是true嗎?6. "RedBird".indexOf("Bird")的值是多少?"RedBird".indexOf("Cat")的值是多少?String對象的字符序列索引位置從0開始。String對象調(diào)用方法indexOf(Stringstr)
38、從當(dāng)前String對象的字符序列的0索引位置開始檢索首次出現(xiàn)str的字符序列的位置,并返回該位置。如果沒有檢索到,該方法返回的值是-1。7. 執(zhí)行("");會發(fā)生異常嗎?1,不是。"hello"是。2 .4和3。3 .false和true。4 .負(fù)數(shù)。5 .是true。6 .3和-1。7 .會發(fā)生NumberFormatException異常。二、選擇題1 .下列哪個敘述是正確的?aA. String類是final類,不可以有子類。B. String類在包中。C. "abc"="abc"的值是false.D. &q
39、uot;abc".equals("Abc")的值是trueString類在包中;“abc"="abc”的值是true,字符常量存儲在常量池中,他們的引用是相同的;而”abc”.equals("Abc")的值是false,區(qū)分大小寫的。2 .下列哪個表達(dá)式是正確的(無編譯錯誤)?bA. intm=("567");B. intm=("567")C. bytem=("2");D. floatm=("")parseXXX(Strings)方法是將由“數(shù)字
40、”字符組成的字符序列轉(zhuǎn)化成對應(yīng)的數(shù)據(jù)類型。A中不能將float類型賦值給intC中不能講int賦值給byteD中Float類不存在parseDouble方法3 .對于如下代碼,下列哪個敘述是正確的?bA.程序編譯出現(xiàn)錯誤。B.程序標(biāo)注的【代碼】的輸出結(jié)果是bird。C.程序標(biāo)注的【代碼】的輸出結(jié)果是fly。D.程序標(biāo)注的【代碼】的輸出結(jié)果是null。publicclassEpublicstaticvoidmain(String口args)StringstrOne="bird"StringstrTwo=strOne;strOne="fly"4.對于如下代碼
41、,下列哪個敘述是正確的?aA.程序出現(xiàn)編譯錯誤。B.無編譯錯誤,在命令行執(zhí)行程序:"javaEIlovethisgame",程序輸出this。C.無編譯錯誤,在命令行執(zhí)行程序:“javaEletusgo",程序無運行異常。D.無編譯錯誤,在命令行執(zhí)行程序:“javaE0123456789”程序輸出3。publicclassEpublicstaticvoidmain(Stringargs)Stringsi=args1;Strings2=args2;Strings3=args3;B選項輸出的實際是game,因為下標(biāo)從0開始;C選項發(fā)生數(shù)組下標(biāo)越界異常,因為并沒有給ar
42、g3賦值5.下列哪個敘述是錯誤的?cA."9dog".matches("ddog")的值是true。C. newDate(1000)對象含有的時間是公元后1000小時的時間D. "hellon"是正確的字符串常量。String對象調(diào)用publicbooleanmatches(Stringregex)方法可以判斷當(dāng)前String對象的字符序列是否和參數(shù)regex指定的正則表達(dá)式匹配。d代表0-9中的任何一個數(shù)字。所以A選項是匹配的。replaceAll(Stringregex,Stringreplacement)方法返回一個新的Stri
43、ng對象,把當(dāng)前String對象的字符序列中所有和參數(shù)regex匹配的子字符序列,用參數(shù)replacement的字符序列替換后得到字符序列。B選項中將1-9數(shù)字序列替換為返回的字符串就是helloC選項1000表示公元后1000毫秒的時間,公元時間是1970-01-010時。1.Ao2.C=3.Bo4,D5.Co三、閱讀程序1 .【代碼】:蘋果。2 .【代碼】:Love:Game。3 .【代碼1】:15?!敬a2】:abc我們。4 .【代碼】:13579。5 【代碼】:9javaHello。6 屬于上機實習(xí)程序,解答略。7 屬于上機實習(xí)程序,解答略。四、編程題1 字符串調(diào)用publicStri
44、ngtoUpperCase()方法返回一個字符串,該字符串把當(dāng)前字符串中的小寫字母變成大寫字母;.字符串調(diào)用publicStringtoLowerCase()方法返回一個字符串,該字符串把當(dāng)前字符串中的大寫字母變成小寫字母。String類的publicStringconcat(Stringstr)方法返回一個字符串,該字符串是把調(diào)用該方法的字符串與參數(shù)指定的字符串連接。編寫一個程序,練習(xí)使用這3個方法。2 String類的publiccharcharAt(intindex)方法可以得到當(dāng)前字符串index位置上的一個字符。編寫程序使用該方法得到一個字符串中的第一個和最后一個字符。3 計算某年、
45、某月、某日和某年、某月、某日之間的天數(shù)間隔。要求年、月、日使用main方法的參數(shù)傳遞到程序中(見例子4)。4 編程練習(xí)Math類的常用方法。5編寫程序剔除一個字符串中的全部非數(shù)字字符,例如,將形如“ab123you”的非數(shù)字字符全部剔除,得到字符串“123”(參看例子10)。6使用Scanner類的實例解析字符串:"數(shù)學(xué)87分,物理76分,英語96分"中的考試成績,并計算出總成績以及平均分?jǐn)?shù)(參看例子14)。1 publicclassEpublicstaticvoidmain(Stringargs)Strings1,s2,t1="ABCDabcd"s1=
46、();s2=();Strings3=(s2);2 .publicclassEpublicstaticvoidmain(Stringargs)Strings="ABCDabcd"charcStart=(0);charcEnd=()-1);3 .import.*;publicclassEpublicstaticvoidmain(Stringargs)intyear1,month1,day1,year2,month2,day2;tryyear1=(args0);month1=(args1);day1=(args2);year2=(args3);month2=(args4);day
47、2=(args5);catch(NumberFormatExceptione)year1=2012;month1=0;day1=1;year2=2018;month2=0;day2=1;Calendarcalendar=();(year1,month1-1,day1);longtimeYear1=();(year2,month2-1,day2);longtimeYear2=();long相隔天數(shù)=(timeYear1-timeYear2)/(1000*60*60*24);year2+"年"+month2+"月"+day2+"日相隔"+
48、相隔天數(shù)+"天)4 .import.*;publicclassEpublicstaticvoidmain(Stringargs)doublea=0,b=0,c=0;a=12;b=24;c=;c=;c=(1);c=(8);5 publicclassEpublicstaticvoidmain(Stringargs)Stringstr="ab123you你是誰?"Stringregex="D+"str=(regex,"");6 import.*;publicclassEpublicstaticvoidmain(Stringargs
49、)Stringcost="數(shù)學(xué)87分,物理76分,英語96分"Scannerscanner=newScanner(cost);doublesum=0;intcount=0;while()trydoublescore=();count+;sum=sum+score;catch(InputMismatchExceptionexp)Stringt=();習(xí)題9(第9章)、問答題1. JFrame類的對象的默認(rèn)布局是什么布局?2. 一個容器對象是否可以使用add方法添加一個JFrame窗口?3. JTextField可以觸發(fā)什么事件?4. JTextArea中的文檔對象可以觸發(fā)什么
50、類型的事件?5. MouseListener接口中有幾個方法?6. 處理鼠標(biāo)拖動觸發(fā)的MouseEvent事件需使用哪個接口?1. Frame容器的默認(rèn)布局是BorderLayout布局。2. 不可以。3. ActionEvent。4. DocumentEvent。5. 5個。6. MouseMotionListener。二、選擇題1 .下列哪個敘述是不正確的?cA. 一個應(yīng)用程序中最多只能有一個窗口。B. JFrame創(chuàng)建的窗口默認(rèn)是不可見的。C.不可以向JFrame窗口中添加JFame窗口。D.窗口可以調(diào)用setTitle(Strings)方法設(shè)置窗口的標(biāo)題。2,下列哪個敘述是不正確的?a
51、A.JButton對象可以使用使用addActionLister(ActionListenerl)方法將沒有實現(xiàn)ActionListener接口的類的實例注冊為自己的監(jiān)視器。B.對于有監(jiān)視器的JTextField文本框,如果該文本框處于活動狀態(tài)(有輸入焦點)時,用戶即使不輸入文本,只要按回車(Enter)鍵也可以觸發(fā)ActionEvent事件C.監(jiān)視KeyEvent事件的監(jiān)視器必須實現(xiàn)KeyListener接口。D.監(jiān)視WindowEvent事件的監(jiān)視器必須實現(xiàn)WindowListener接口。3.下列哪個敘述是不正確的?aA.使用FlowLayout布局的容器最多可以添加5個組件。B.使用B
52、orderLayout布局的容器被劃分成5個區(qū)域。C. JPanel的默認(rèn)布局是FlowLayout布局。D. JDialog的默認(rèn)布局是BorderLayout布局。1. Co2.A。3.Ao4,D5.Co三、編程題1 .編寫應(yīng)用程序,有一個標(biāo)題為“計算”的窗口,窗口的布局為FlowLayout布局。窗口中添加兩個文本區(qū),當(dāng)我們在一個文本區(qū)中輸入若干個數(shù)時,另一個文本區(qū)同時對你輸入的數(shù)進(jìn)行求和運算并求出平均值,也就是說隨著你輸入的變化,另一個文本區(qū)不斷地更新求和及平均值。2 .編寫一個應(yīng)用程序,有一個標(biāo)題為“計算”的窗口,窗口的布局為FlowLayout布局。設(shè)計四個按鈕,分別命名為“加”、
53、“差”、“積、”、“除”,另外,窗口中還有三個文本框。單擊相應(yīng)的按鈕,將兩個文本框的數(shù)字做運算,在第三個文本框中顯示結(jié)果。要求處理NumberFormatException異常。3 .參照例子15編寫一個體現(xiàn)MVC吉構(gòu)的GUI程序。首先編寫一個封裝梯形類,然后再編寫一個窗口。要求窗口使用三文本框和一個文本區(qū)為梯形對象中的數(shù)據(jù)提供視圖,其中三個文本框用來顯示和更新梯形對象的上底、下底和高;文本區(qū)對象用來顯示梯形的面積。窗口中有一個按鈕,用戶單擊該按鈕后,程序用3個文本框中的數(shù)據(jù)分別作為梯形對象的上底、下底和高,并將計算出的梯形的面積顯示在文本區(qū)中。1.import.*;import.*;publ
54、icclassEpublicstaticvoidmain(Stringargs口)Computerfr=newComputer();classComputerextendsJFrameimplementsDocumentListenerJTextAreatext1,text2;intcount=1;doublesum=0,aver=0;Computer()setLayout(newFlowLayout();text1=newJTextArea(6,20);text2=newJTextArea(6,20);add(newJScrollPane(text1);add(newJScrollPane(
55、text2);(false);().addDocumentListener(this);setSize(300,320);setVisible(true);validate();setDefaultCloseOperation;publicvoidchangedUpdate(DocumentEvente)Strings=();sum=0;aver=0;for(inti=0;i<i+)trysum=sum+(ai);catch(Exceptionee)aver=sum/count;(null);("n和:"+sum);("n平均值:"+aver);publicvoidremove
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 美容院二零二五年度美容儀器租賃及維修服務(wù)合同2篇
- 2025年新型銅箔生產(chǎn)線自動化升級改造合同范本3篇
- 二零二五年度城市居民住房按揭貸款合同范本8篇
- 二零二五年度空運貨物出口運輸及保險服務(wù)合同2篇
- 二零二五年度文化產(chǎn)業(yè)創(chuàng)新發(fā)展貸款合同模板4篇
- 2025年度智慧城市基礎(chǔ)設(shè)施搭建委托協(xié)議4篇
- 2025年度個人二手車買賣合同范本標(biāo)準(zhǔn)版4篇
- 顫音音響發(fā)生器課程設(shè)計
- 2024碎石加工廠產(chǎn)品質(zhì)量追溯體系建立合同范本3篇
- 單元四吊頂與隔墻工程
- 第22單元(二次函數(shù))-單元測試卷(2)-2024-2025學(xué)年數(shù)學(xué)人教版九年級上冊(含答案解析)
- 藍(lán)色3D風(fēng)工作總結(jié)匯報模板
- 安全常識課件
- 河北省石家莊市2023-2024學(xué)年高一上學(xué)期期末聯(lián)考化學(xué)試題(含答案)
- 2024年江蘇省導(dǎo)游服務(wù)技能大賽理論考試題庫(含答案)
- 2024年中考英語閱讀理解表格型解題技巧講解(含練習(xí)題及答案)
- 新版中國食物成分表
- 浙江省溫州市溫州中學(xué)2025屆數(shù)學(xué)高二上期末綜合測試試題含解析
- 2024年山東省青島市中考生物試題(含答案)
- 保安公司市場拓展方案-保安拓展工作方案
- GB/T 15843.2-2024網(wǎng)絡(luò)安全技術(shù)實體鑒別第2部分:采用鑒別式加密的機制
評論
0/150
提交評論