




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
Java語言程序設(shè)計期末復(fù)習(xí)綜合練習(xí)題
一、選擇題。
2.main方法是JavaApplication程序執(zhí)行的入口點(diǎn),關(guān)于main方法的方
法頭以下哪項(xiàng)是合法的()
A、publicstaticvoidmain()
B、publicstaticvoidmain(Stringargs[])
C、publicstaticintmain(String[]arg)
D、publicvoidmain(Stringarg[])
答:B
4.下列哪個是合法的Java標(biāo)識符(
)
A、Tree&GlassesB、FirstJavaApplet
C、_$theLastOneD、273.5
答:B、C
5.JavaApplication源程序的主類是指包含有()方法的類。
A、main方法B、toString方法
C^init方法D、actionPerfromed方法
答:A
6.Java的字符類型采用的是Unicode編碼方案,每個Unicode碼占用
()個比特位。
A、8B、16C、32D、64
答:B
7.設(shè)a=8,則表達(dá)式a>>>2的值是()。
-1-
A、1B、2C、3D、4
答:B
8.若a的值為3時,下列程序段被執(zhí)行后,c的值是多少(
)
c=1;
if(a>0)if(a>3)c=2;elsec=3;elsec=4;
A、1B、2C、3D、4
答:C
9.在編寫JavaApplication程序時,若需要使用到標(biāo)準(zhǔn)輸入輸出語句,必
須在程序的開頭寫上()語句。
A、importjava.awt.*;B、importjava.applet.Applet;
C、importjava.io.*;D、importjava.awt.Graphics;
答:C
10.對于構(gòu)造函數(shù),下列敘述正確的是()。
A、構(gòu)造函數(shù)是類的一種特殊函數(shù),它的方法名必須與類名相同。
B、構(gòu)造函數(shù)的返回類型只能是void型。
C、構(gòu)造函數(shù)的主要作用是完成對類的對象的初始化工作。
D、一般在創(chuàng)建新對象時,系統(tǒng)會自動調(diào)用構(gòu)造函數(shù)。
答:ACD
11.下面的是關(guān)于類及其修飾符的一些描述,正確的是:()。
A、abstract類只能用來派生子類,不能用來創(chuàng)建abstract類的對象。
B、final類不但可以用來派生子類,也可以用來創(chuàng)建Mal類的對象。
-2-
C、abstract不能與final同時修飾一^類。
D、abstract方法必須在abstract類中聲明,但abstract類定義中可以沒
有abstract方法。
答:ACD
13.若在某一個類定義中定義有如下的方法:abstractvoidperformDial();
該方法屬于()。
A、本地方法B、最終方法C、解態(tài)方法D、抽象方法
答:D
14.下列關(guān)于靜態(tài)初始化器的敘述中,哪一個是正確的()
A、靜態(tài)初始化器是在構(gòu)造函數(shù)之前加上static修飾符。
B、靜態(tài)初始化器是對類自身進(jìn)行初始化。
C、靜態(tài)初始化器在同一個類中只能有一個。
D、靜態(tài)初始化器是在其所屬的類加載內(nèi)存時由系統(tǒng)自動調(diào)用執(zhí)行。
答:BD
15.不使用static修飾符限定的方法稱為對象(或?qū)嵗┓椒ǎ铝心囊粋€
說法是正確的(
)
A、實(shí)例方法可以直接調(diào)用父類的實(shí)例方法。
B、實(shí)例方法可以直接調(diào)用父類的類方法。
C、實(shí)例方法可以直接調(diào)用其他類的實(shí)例方法。
D、實(shí)例方法可以直接調(diào)用本類的類方法。
答:BD
-3-
16.設(shè)有下面兩個類的定義:
classPerson{classStudentextendsPerson{
longid;//身份證號intscore;//入學(xué)總分
Stringname;//姓名intgetScore(){
}returnscore;
)
)
問:類Person和類Student的關(guān)系是()。
A、包含關(guān)系B、繼承關(guān)系
C、關(guān)聯(lián)關(guān)系D、無關(guān)系,上述類定義有語法錯誤
答:B、
17.設(shè)有下面的兩個類定義:
classAA{
voidShow(){System.out.printin("我喜歡Java!");
}
classBBextendsAA{
voidShow(){System.out.println("我喜歡C++!");
}
則順序執(zhí)行如下語句后輸出結(jié)果為:()
AAa;BBb;
a.Show();b.Show();
A、我喜歡Java!B、我喜歡C++!
-4-
我喜歡C++!我喜歡Java!
C^我喜歡Java!D、我喜歡C++!
我喜歡Java!我喜歡C++!
答:A
19.在Java中,一個類可同時定義許多同名的方法,這些方法的形式參數(shù)
的個數(shù)、類型或順序各不相同,傳回的值也可以不相同。這種面向?qū)ο蟪绦蛱?/p>
性稱為()。
A、隱藏B、覆蓋C、重載D、Java不支持此特性
答:C
20.對于構(gòu)造函數(shù),下列敘述正確的是()o
A、構(gòu)造函數(shù)也允許重載。
B、子類無條件地繼承父類的無參構(gòu)造函數(shù)。
C、子類不允許調(diào)用父類的構(gòu)造函數(shù)。
D、在同一個類中定義的重載構(gòu)造函數(shù)可以相互調(diào)用。
答:ABD
22.設(shè)有下面兩個賦值語句:
a=lnteger.parselnt("1024");
b=lnteger.valueOf(i'1024',).intValue();
下述說法正確的是()。
A、a是整數(shù)類型變量,b是整數(shù)類對象。
B、a是整數(shù)類對象,b是整數(shù)類型變量。
C、a和b都是整數(shù)類對象并且它們的值相等。
-5-
D、a和b都是整數(shù)類型變量并且它們的值相等。
答:D
24.下面的語句的作用是:()。
VectorMyVector=newVector(100,50);
A、創(chuàng)建一^數(shù)組類對象MyVector,有100個元素的空間,每個元素的初
值為50o
B、創(chuàng)建一^向量類對象MyVector,有100個元素的空間,每個元素的初
值為50o
C、創(chuàng)建一個數(shù)組類對象MyVector,有100個元素的空間,若空間使用完
時,以50
個元素空間單位遞增。
D、創(chuàng)建一個向量類對象MyVector,有100個元素的空間,若空間使用完
時,以50
個元素空間單位遞增。
答:D
25.在Java中,存放字符串常量的對象屬于()類對象。
A、CharacterB、String
C、StringBufferD、Vector
答:B
31.對于子類的構(gòu)造函數(shù)說明,下列敘述中不正確的是()o
A、子類無條件地繼承父類的無參構(gòu)造函數(shù)。
B、子類可以在自己的構(gòu)造函數(shù)中使用super關(guān)鍵字來調(diào)用父類的含參
數(shù)構(gòu)造函
數(shù),但這個調(diào)用語句必須是子類構(gòu)造函數(shù)的第一個可執(zhí)行語句。
-6-
C、在創(chuàng)建子類的對象時,將先執(zhí)行繼承自父類的無參構(gòu)造函數(shù),然后
再執(zhí)行
自己的構(gòu)造函數(shù)。
D、子類不但可以繼承父類的無參構(gòu)造函數(shù),也可以繼承父類的有參構(gòu)
造函數(shù)。
答:D
二、填空題。
2.設(shè)x=2,則表達(dá)式(x++)*3的值是o
答:6
3.若x=5,y=10,則x>y和x<=y的邏輯值分別為和。
答:false、true
4.順序執(zhí)行以下兩個語句的輸出結(jié)果是:o
Strings="我喜歡學(xué)習(xí)Java!”;
System.out.println(s.length());
答:10
5.據(jù)程序的構(gòu)成和運(yùn)行環(huán)境的不同,Java源程序分為兩大類:
程序和程序。
答:JavaApplication、JavaApplet(或Application、Applet)
6.如果一個Java源程序文件中定義有4個類,則使用Sun公司的JDK編
譯器javac編譯該源程序文件將產(chǎn)生個文件名與類名相同而擴(kuò)展名為
的字節(jié)碼文件。
答:4、class
7.開發(fā)與運(yùn)行Java程序需要經(jīng)過的三個主要步驟為、
和O
-7-
答:編輯源程序、編譯生成字節(jié)碼、解釋運(yùn)行字節(jié)碼
9.一^JavaApplication源程序文件名為MyJavaApplication.java,如果使
用Sun公司的Java開發(fā)工具JDK編譯該源程序文件并使用其虛擬機(jī)運(yùn)算這個
程序的字節(jié)碼文件,應(yīng)該順序執(zhí)行如下兩個命令:
答:javacMyJavaApplication.java、javaMyJavaApplication
10.在Java的基本數(shù)據(jù)類型中,char型采用Unicode編碼方案,每個
Unicode碼字符占用字節(jié)內(nèi)存空間,這樣,無論是中文字符還是英文字
符,每個都是占用字節(jié)內(nèi)存空間。
答:2、2
11.在Java程序中定義的類有兩種成員:、o
答:域成員、方法成員
13.創(chuàng)建一個名為MyPackage的包的語句是,
該語句應(yīng)該放在程序的位置為:O
答:packageMyPackage;應(yīng)該在程序第一句。
14.方法是一種僅有方法頭,沒有具體方法體和操作實(shí)現(xiàn)的方法,該
方法必須在抽象類之中定義。方法是不能被當(dāng)前類的子類重新定義的方
法。
答:抽象方法、最終方法(或abstract方法、行nal方法)
15.形式參數(shù)指的是方法被時的參數(shù)行,實(shí)際參數(shù)是方法被
時所傳遞進(jìn)去的變量或值。
-8-
答:定義、調(diào)用
16.多態(tài)是指,在Java中有兩種多態(tài),一
種是使用方法的實(shí)現(xiàn)多態(tài),另一種是使用方法的實(shí)現(xiàn)多態(tài)。
答:一個程序中有多個同名的不同方法覆蓋重載
17.在Java程序中,通過類的定義只能實(shí)現(xiàn)重繼承,但通過接口的
定義可以實(shí)現(xiàn)重繼承關(guān)系。
答:單、多
19.字符串分為兩大類,一類是字符串常量,使用類的對象表示;
另一類是字符串變量,使用類的對象表示。
答:String、StringBuffer
20.設(shè)有數(shù)組定義:intMylntArray[]={10,20,30,40,50,60,70,
80,90,100);
則執(zhí)行以下幾個語句后的輸出結(jié)果是O
ints=0;
for(inti=0;i<MylntArray.length;i++)
s+=MylntArray[i];
System.out.println(s);
答:550
三、寫出下列程序完成的功能。
1.publicclassSum
{publicstaticvoidmain(Stringargs[])
{doublesum=0.0;
-9-
for(inti=1;i<=100;i++)
sum+=1.0/(double)i;
System.out.println("sum="+sum);
)
)
答:計算1/1+1/2+1/3+..+1/100的值。
2.importjava.io.*;
publicclassReverse
{publicstaticvoidmain(Stringargs[])
{inti,n=10;
inta[]=newint[10];
for(i=0;i<n;i++)
try{
BufferedReaderbr=newBufferedReader(
newInputStreamReader(System.in));
a[i]=lnteger.parselnt(br.readLine());//輸入一個整數(shù)
}catch(lOExceptione){};
for(i=n-1;i>=0;i一)
System.out.print(a[i]+"");
System.out.println();
}
)
-10-
答:從標(biāo)準(zhǔn)輸入(即鍵盤)讀入10個整數(shù)存入整型數(shù)組a中,然后逆序輸出這
10個整數(shù)。
4.importjava.io.*;
publicclassClassi
(
publicstaticvoidmain(Stringargs[]){
inti,Max,Min;
inta[]={12,67,8,98,23,56,124,55,99,100};
Max=Min=a[0];
for(i=1;i<a.length;i++){
if(a[i]<Min)Min=a[i];
if(a[i]>Max)Max=a[i];
}
System.out.println(Max+""+Min);
System.out.println();
)
)
答:在數(shù)組中查找并輸出最大值和最小值。
5.publicclassABC
(
publicstaticvoidmain(Stringargs[]){
-11-
inti,j;
inta[]={12,67,8,98,23,56,124,55,99,100};
for(i=0;i<a.length-1;i++){
intk=i;
for(j=i;j<a.length;j++)
if(aD]<a[k])k=j;
inttemp=a[i];
a[i]=a[k];
a[k]=temp;
)
for(i=0;i<a.length;i++)
System.out.print(a[i]+"");
System.out.println();
)
)
答:使用選擇法對數(shù)組a的數(shù)據(jù)進(jìn)行升序排序,然后輸出排序后的結(jié)果。
6.importjava.io.*;
publicclassClassi{
publicstaticvoidmain(Stringargs[])
(
FactN=newFact(4);
System.out.println(N.fact());
-12-
)
)
classFact{
intn;
Fact(intnn){n=nn;}
intfact(){
inti,f=1;
for(i=1;i<=n;i++)
f=f*i;
returnf;
)
)
答:定義一個計算n!的類Fact,然后主類中創(chuàng)建一個對象求解4!的值。
8.importjava.io.*;
publicclassClassi{
publicstaticvoidmain(Stringargs[])
{SubClassa=newSubClass(10,3);
System.out.println(a.exp());
)
)
classSuperClass{
-13-
floatx;
intn;
SuperClass(floatxx,intnn){x=xx;n=nn;}
)
classSubClassextendsSuperClass{
SubClass(floatxx,intnn){super(xx,nn);}
floatexp(){
floats=1;
for(inti=1;i<=n;i++)s=s*x;
returns;
}
)
答:定義一個計算Xn的類,然后用該類求103的值。
10.importjava.io.*;
publicclassabc
{publicstaticvoidmain(Stringargs[])
{SubClasssb=newSubClass();
System.out.println(sb.max());
}
)
classSuperClass
-14-
{inta=10,b=20;}
classSubClassextendsSuperClass
{intmax(){return((a>b)a:b);}}
答:求兩個數(shù)的最大值。
四、寫出下面程序的運(yùn)行結(jié)果。
1.importjava.io.*;
publicclassabc
{publicstaticvoidmain(Stringargs[])
{ABs=newAB("Hello!","lloveJAVA.");
System.out.println(s.toString());
)
)
classAB{
Strings1;
Strings2;
AB(Stringstr1,Stringstr2)
{s1=str1;s2=str2;}
publicStringtoString()
{returns1+s2;}
)
答:Hello!IloveJAVA.
-15-
2.importjava.io.*;
publicclassabc
{
publicstaticvoidmain(Stringargs[])
{inti,s=0;
inta[]={10,20,30,40,50,60,70,80,90};
for(i=0;i<a.length;i++)
if(a[i]%3==0)s+=a[i];
System.out.println("s="+s);
)
)
答:s=180
3.importjava.io.*;
publicclassabc
(
publicstaticvoidmain(Stringargs[])
{SubSubClassx=newSubSubClass(10,20,30);
x.show();
)
)
classSuperClass
-16-
{inta,b;
SuperClass(intaa,intbb)
{a=aa;b=bb;}
voidshow()
{System.out.println("a="+a+"\nb="+b);}
)
classSubClassextendsSuperClass
{intc;
SubClass(intaa,intbb,intcc)
{super(aa.bb);
c=cc;
)
)
classSubSubClassextendsSubClass
{inta;
SubSubClass(intaa,intbb,intcc)
{super(aa,bb,cc);
a=aa+bb+cc;
)
voidshow()
{System.out.println("a="+a+"\nb="+b+"\nc="+c);}
}
-17-
答:a=60
b=20
c=30
4.importjava.io.*;
publicclassabe
(
publicstaticvoidmain(Stringargs[])
(
Strings1="Hello!";
Strings2=newString("World!");
System.out.println(s1.concat(s2));
)
)
答:Hello!World!
5.importjava.io.*;
publicclassABC
(
publicstaticvoidmain(Stringargs[])
{inti;
inta[]={11,22,33,44,55,66,77,88,99};
for(i=0;i<=a.length/2;i++)
-18-
System.out.print(a[i]+a[a.length-i-1]+"");
System.out.println();
)
)
答:110110110110110
6.importjava.io.*;
classParent
(
voidprintMe()
(
System.out.println("parent");
)
)
classChildextendsParent
(
voidprintMe()
(
System.out.println("child");
}
voidprintAII()
(
super.printMe();
-19-
this.printMe();
printMe();
)
}
publicclassClassi
(
publicstaticvoidmain(Stringargs[])
(
ChildmyC=newChild();
myC.printAII();
)
)
答:parent
child
child
五、使用Java語言編寫程序。
1.編寫一個字符界面的JavaApplication程序,接受用戶從鍵盤輸入的一
個正整數(shù),然后統(tǒng)計并輸出從1到這個正整數(shù)的累加和。
答:參考程序如下:
importjava.io.*;
publicclassSUM
-20-
publicstaticvoidmain(String[]args)
inti,n=-1,sum=0;
while(n<1)
try(
BufferedReaderbr=
newBufferedReader(new
InputStreamReader(System.in));
n=Integer.parseInt(br.readLine());
}catch(lOExceptione){};
for(i=1;i<=n;i++)sum+=i;
System.out.println(sum);
)
)
2.編寫一^字符界面的JavaAppli
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO/TR 23652:2024 EN Nanotechnologies - Considerations for radioisotope labelling methods of nanomaterials for performance evaluation
- 【正版授權(quán)】 ISO 4064-1:2024 EN Water meters for cold potable water and hot water - Part 1: Metrological and technical requirements
- 包露與配偶2025年度離婚經(jīng)濟(jì)補(bǔ)償及贍養(yǎng)費(fèi)協(xié)議
- 2025年度太陽能光伏發(fā)電系統(tǒng)設(shè)計與施工總承包協(xié)議
- 2025年度環(huán)境安全監(jiān)測與治理服務(wù)合同協(xié)議
- 班級體育活動的組織與安排計劃
- 庫存分析對倉庫決策的支持計劃
- 急診呼吸機(jī)使用規(guī)范與管理計劃
- 提高團(tuán)隊(duì)創(chuàng)新力的工作總結(jié)計劃
- 2025年建筑鋁擠壓材項(xiàng)目建議書
- 人教版PEP五年級英語下冊單詞表與單詞字帖 手寫體可打印
- 第七節(jié)碎石路基施工方案
- 三年級數(shù)學(xué)興趣班綱要及教案
- 記者行業(yè)現(xiàn)狀分析及發(fā)展趨勢
- 如果歷史是一群喵
- 抖音房產(chǎn)直播敏感詞匯表
- 2024屆山東省青島市市北區(qū)八年級物理第二學(xué)期期末質(zhì)量檢測試題含解析
- 2024年漯河食品職業(yè)學(xué)院單招職業(yè)適應(yīng)性測試題庫附答案
- 廣東省深圳市2023年中考英語試題(含答案與解析)
- 《看看我們的地球》
- 2022-2023年人教版九年級化學(xué)(上冊)期末試題及答案(完整)
評論
0/150
提交評論