版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
Oava語言程序設(shè)計基礎(chǔ)教程》
練習(xí)思考題參考答案
第1章Java程序設(shè)計概述
K1單項選擇題
1.編譯JavaApplication源文件將產(chǎn)生相應(yīng)得字節(jié)碼文件,擴展名就是什么
A、、javaooo?B、、c1ass
0c、、htmbooD、、exe
解答:B
2.Java語言具有許多優(yōu)點與特點,下列選項中,哪個反映了Java中”一次編
譯,隨處運行”得特點.
4、簡單性。平臺無關(guān)性
C、面向?qū)ο笮?8D、安全性
解答:B
3.Java語言具有許多優(yōu)點與特點,下列選項中,哪個反映了Java中并行機制得
特點。
?A、多線程°sB、平臺無關(guān)性
C、面向?qū)ο笮浴!癉、安全性
解答:A
4o在Java語言中,下列哪些語句關(guān)于內(nèi)存回收得說明就是正確得?
?A.程序員必須創(chuàng)建一個線程來釋放內(nèi)存;
B.內(nèi)存回收程序負(fù)責(zé)釋放無用內(nèi)存;
C.內(nèi)存回收程序允許程序員直接釋放內(nèi)存;
D.內(nèi)存回收程序可以在指定得時間釋放內(nèi)存對象
解答:B
5.一個Java源文件中最多只能有多少個public類。
4、1個。:B、2個
C、3個。D、任意多個
解答:A
6O下面哪一個不就是Java語言所具有得特點。
A、沒有全局變量,在類得定義外部沒有任何得變量定義;
。:B、不直接支持指針操作,而使用更安全得引用類型;
C、支持子類對父類得多繼承;
D、具有自動垃圾收集功能;
解答:C
7。下面哪一個不就是Java開發(fā)工具包JDK得組成部分.
4、Java得編譯器;
B、Java得解釋器;。
9、Java得API繼承類庫;
?D、Eelipse開發(fā)工具;
解答:C
8oJDK提供得編譯器就是()。
?A、java、exe??。B、javac、exe
C、javap、exe”。D^javaw、exe
解答:B
9o作為Java應(yīng)用程序入口得main方法,其聲明格式可以就是()
A、publicvoidmain(String[]args)
B、pub1icstaticvoidmain(String[]args)
C、publicstaticvoidMain(String*args)
D、publicintmain(String[]args)
解答:B
10.下列說法正確得就是(A)
A、JAVA程序得main方法必須寫在類里面
B、JAVA程序中可以有多個main方法
C、JAVA程序中類名必須與文件名一樣
D、JAVA程序得main方法中如果只有一條語句,可以不用{}(大括號)
括起來
11。下列哪些語句關(guān)于Java內(nèi)存回收得說明就是正確得?(B)
A、程序員必須創(chuàng)建一個線程來釋放內(nèi)存
B、內(nèi)存回收程序負(fù)責(zé)釋放無用內(nèi)存
C、內(nèi)存回收程序允許程序員直接釋放內(nèi)存
D、內(nèi)存回收程序可以在指定得時間釋放內(nèi)存對象
I、2填空題
1、開發(fā)與運行Java程序需要經(jīng)過得三個主要步驟為、
與。
解答:編輯源程序、編譯生成字節(jié)碼與解釋運行字節(jié)碼
2、使用Java編譯器javac、exe編譯源文件得到字節(jié)碼文件。
3、Java應(yīng)用程序必須通過Java解釋器___JAVA—、exe來解釋執(zhí)行其字節(jié)碼文件。
4、如果Java源文件中有一個類就是publie類,那么源文件得名字必須與這個類得名
字完全—相同,擴展名就是、java。
5、Java應(yīng)用程序總就是從主類得main方法開始執(zhí)行。
1\3簡答題
13、簡述Java程序得開發(fā)過程?
(1)使用一個文字編輯器,編寫源文件.(2)使用java編譯器,編譯源文件得到字節(jié)碼文件。
(3)解釋運行字節(jié)碼,分兩種java應(yīng)用程序必須通過java解釋器來解釋執(zhí)行,java小應(yīng)用
程序必須使用解釋器與瀏覽器運行程序.
1、什么就是Java虛擬機?為什么Java被稱作就是“平臺無關(guān)得編程語言”?
解答:
Java虛擬機就是一個可以執(zhí)行Java字節(jié)碼得虛擬機進(jìn)程。Java源文件被編譯成能被J
ava虛擬機執(zhí)行得字節(jié)碼文件。
Java被設(shè)計成允許應(yīng)用程序可以運行在任意得平臺,而不需要程序員為每一個平臺單
獨重寫或者就是重新編譯。Java虛擬機讓這個變?yōu)榭赡?,因為它知道底層硬件平臺得指
令長度與其她特性。
3、Java語言得關(guān)鍵特點有哪些?
解答:
簡單性
平臺無關(guān)性
面向?qū)ο笮?/p>
安全性
分布式
多線程
動態(tài)性
1、4綜合題
第2章Java基本得程序設(shè)計結(jié)構(gòu)
2、1單項選擇題
1、下面哪一項在java中就是非法得標(biāo)識符?()
A、$uSer*9
B、point
C、You&me
D、_endline
解答:C
2、若有定義inta=9,b=6;那么a〉b得值就是:()
A、0883B、1
C、faIse。D、true
解答:D
3、執(zhí)行完以下代碼int[]x=newint[25]后似下說明正確得就是:()
A、*[24]為02B、x[24]未定義
C、x[25]為0。D、x[0]為空
解答:A
4、Java應(yīng)用程序得main方法中有以下語句,則輸出得結(jié)果就是()。
int[]x={2,3,-8,7,9};
intmax=x[0];
for(inti=l;i<x、1ength;i++){
if(x[i]>max)
max=x[i];
}
System>out>printIn(max);
A-.2°B、-8°
C、7"e"D、9
解答:D
5、設(shè)x=l,y=2,z=3,則表達(dá)式y(tǒng)+=z--/++x得值就是
A、3°eeB、3、5
C、4eeeoD、5
解答:A
5、執(zhí)行System、out>println(5/4),這條代碼得輸出結(jié)果就是()
A、B、1、25
C、1、5。。D、0
解答:A
6、下列語句有錯誤得就是:()
A、int[]a;匕B、int[]b=newint[10];
C、intc[]=newint[];2、intd[]=null;
解答:C
7、下列語句有錯誤得就是:()
A、inta[][]=newint[5][5];上、int[][]b=newint[5][5];
C、int口c[]=newint[5][5];D、int[][]d=newint[5,5];
解答:D
8、下列哪一個不屬于Java中得8種基本數(shù)據(jù)類型()
A、double;*、char;
C、int;D、String;
解答:D
9、以下數(shù)據(jù)類型存儲空間最大得就是()o
(A)byte(B)1ong(C)f1oat(D)char
解答:B
10、System>out、println(”5"+2);得輸出結(jié)果應(yīng)該就是()。
A52B7
C2D5
答案:A
11.在類得定義中可以有兩個同名方法,每個方法得參數(shù)不同,這種現(xiàn)象稱為方法
(D)o
(A)封裝(B)繼承(C)覆蓋(D)重載
12.java中定義字符串Strings="pzhu",下面操作可以取得字符串長度得就是
()。
4、s>length()B、s>lengthC、s>size()D、
1ength(s)
解答:A
13。指出下列程序運行得結(jié)果(B)(很難)
publicclassExamp1e{
Stringstr=newString("goodn);
char[]ch={7a"c1};
pub1icstaticvoidmain(Stringargs[]){
Examp1eex=newExample();
ex、change(ex、str,ex>ch);
System>out>print(ex、str+“and”);
System>out>print(ex、ch);
}
publievoidchange(Stringstr,charch[]){
str="testok";
ch[0]=,g/;
}
)
A、goodandabc
B、goodandgbe
C、testokandabe
D、testokandgbc
14.下面代碼得運行結(jié)果為:(C)(較難)
importjava>io、*;
importjava>uti1>*;
publicclassfoo{
publicstaticvoidmain(String□args){
Strings;
System>out>print1n("s=n+s);
)
)
A代碼得到編譯,并輸出“s=”
B代碼得到編譯,并輸出“s=nul1”
C由于Strings沒有初始化,代碼不能編譯通過
D代碼得到編譯,但捕獲到NullPointException異常
15.關(guān)于以下程序段,正確得說法就是(C)
1.Stringsl="abc"+”def”;
2oStrings2=newString(sl);
3.if(sl==s2)
4.System>out>printinC<==sueceeded");
5.if(sl>equaIs(s2))
6oSystem>out、printin("、equals()succeeded");
A、行4與行6都將執(zhí)行
B、行4執(zhí)行,行6不執(zhí)行
C、行6執(zhí)行,行4不執(zhí)行
D、行4、行6都不執(zhí)行
16oJavaapplication中得主類需包含main方法,main方法得返回類型就是
什么?(D)A、intB>float
C、doubleD、void
17o為一個boolean類型變量賦值時,可以使用(B)方式
A、boolean=1;
B、booleana=(9〉=10);
C、boo1eana="真";
D、booleana==faIse;
18.表達(dá)式(11+3*8)/4%3得值就是(D)
A、31B、0C、1D、2
19o運算符優(yōu)先級別排序正確得就是(A)(太難)
A、由高向低分別就是:()、!、算術(shù)運算符、關(guān)系運算符、邏輯運算符、賦值運算符;
B、由高向低分別就是:()、關(guān)系運算符、算術(shù)運算符、賦值運算符、!、邏輯運算符;
C、由高向低分別就是:()、算術(shù)運算符、邏輯運算符、關(guān)系運算符、!、賦值運算符;
D、由高向低分別就是:()、!、關(guān)系運算符、賦值運算符、算術(shù)運算符、邏輯運算符;
20.下列值不為true得表達(dá)式有(C).
A、"john”=="johnH
B、"john"、equals(njohn”)
C、"john“=“john”
D、“john"、equaIs(newString("john"))
21、下面得方法,當(dāng)輸入為2得時候返回值就是多少?(D)(很難)
publicstaticintgetValue(inti){
intresult=0;
switch(i){
case1:
resu1t=result+i;
case2:
resu1t=result+i*2;
case3:
result=resu1t+i*3;
)
returnresu1t;
)
AOB2C4
D10
答案:D
解析:注意這里case后面沒有加break,所以從case2開始一直往下運行。
22、下面有關(guān)for循環(huán)得描述正確得就是(A)
A、for循環(huán)體語句中,可以包含多條語句,但要用大括號括起來
B、for循環(huán)只能用于循環(huán)次數(shù)己經(jīng)確定得情況
C、在for循環(huán)中,不能使用break語句跳出循環(huán)
D、for循環(huán)就是先執(zhí)行循環(huán)體語句,后進(jìn)行條件判斷
23、score就是一個整數(shù)數(shù)組,有五個元素,已經(jīng)正確初始化并賦值,仔細(xì)閱讀下面代
碼,程序運行結(jié)果就是(B)
temp=score[0];
for(intindex=1;index<5;index++){
if(score[index]<temp){
temp=score[index];
}
)
A、求最大數(shù)B、求最小數(shù)C、找到數(shù)組最后一個元素D、編譯出錯
26、
2、2填空題
1、Java語言就是一種完全得一面向?qū)ο骭程序設(shè)計語言
2、Stringsi="China";intn=s1、1ength();n得值為_5_
3、在Java語言中,基本數(shù)據(jù)類型包括:____整數(shù)類型、—浮點類型、字符
類型—與—布爾類型
17、在Java得基本數(shù)據(jù)類型中,char型采用Unicode編碼方案海個Unicode碼占用—
_2字節(jié)內(nèi)存空間,這樣,無論就是中文字符還就是英文字符,都就是占用_2—
字節(jié)內(nèi)存空間。
18、設(shè)x=2,則表達(dá)式(x++)/3得值就是_0—.
20、設(shè)有數(shù)組定義:
intMylntArray[]={10,20,30,40,50,60,70);
則執(zhí)行以下幾個語句后得輸出結(jié)果就是:120.
TntMyIntArray口={10,20,30,40,50,60,70];
ints=0;
sfor(inti=0;i〈MylntArray、1ength;i++)
“if(i%2==1)
。。s+=MyIntArray[i];
System>out、println(s);
21、數(shù)組對象得長度在數(shù)組對象創(chuàng)建之后,就—不會改變。數(shù)組元素得下標(biāo)總就
是從—0開始。
22、對于數(shù)組int[][]t={{1,2,3},{4,5,6})來說,t、1ength等于—2—,t[0]>
1ength等于___3。
2、3簡答題
1、Java得基本數(shù)據(jù)類型有哪8種,每種類型得內(nèi)存空間分別就是多少.
2、4綜合題
26、編程計算10-20得整數(shù)得平方值,將結(jié)果保存在一個數(shù)組中。
27、編寫一個程序使之從鍵盤讀入10個整數(shù)存入整型數(shù)組a中,并輸出這10個整數(shù)得
最大值與最小值。
importjava>util、Scanner;
publicclasslianxi30{
publicstaticvoidmain(Stringargs[]){
3Scannertemp;
afloat[]sum=newfloat[11];
3floatmax,min;
sfor(inti=0;i〈10;i++)(
66ystem、out、print1n(〃請輸入第一個數(shù)字(回車結(jié)束):“);
3temp=newScanner(System>in);
Stringa=temp>nextLine();
esum[i]=Integer>parseInt(a);//獲取輸入得字符串
g}
max=sum[0];
min=sum[0];
gfor(intj=1;j<10;j++)
b{
4f(max〈sum[j])
Bsmax=sum[j];
3eeIseif(min〉sum[j])
semin二sum[j];
°)
System>out、println(max);
3System、out>printin(min);
)
)
31、如果我國經(jīng)濟以每年10%得速度保持穩(wěn)定增長,請編寫一個程序,計算每年達(dá)到多
少,多少年可以實現(xiàn)總量翻兩番.
classexA4_l{
publicstaticvoidmain(Stringargs[]){
inta=0;
doublei=0>10,sum=l;
while(sum<=4){
sum=(i+l)*sum;
a++;
System>out、print1n("第"+a+"年達(dá)到"+sum);
}
System>out、print1n("需要"+a+"年實現(xiàn)兩番)
)
)
第3章類與對象
3、1單項選擇題
1、下列關(guān)于變量得敘述哪個就是錯得?()
A、實例變量就是類得成員變量。
B、在方法中定義得局部變量在該方法被執(zhí)行時創(chuàng)建。
C、實例變量用關(guān)鍵字static聲明。
D、局部變量在使用前必須被初始化。
解答:C
2、在Java語言中,下列哪個包就是編譯器自動導(dǎo)入得?()
A、java>applet”近、java>lang
C、java>io?2、java>awt
解答:B
6、不允許作為類及類成員得訪問控制符得就是()。
A、pub1ic?B、private
C、static="sD、protected
解答:C
7、為AB類得一個無形式參數(shù)無返回值得方法method書寫方法頭,使得使用類名
AB作為前綴就可以調(diào)用它,該方法頭得形式為()o
A、staticvoidmethod()B、publicvoidmethod()
C、fina1voidmethod()“D、abstractvoidmethod()
解答:A
8、。可以在下面代碼段pointx處寫入得就是?()
//pointx
publicclassInteresting{
//dosomething
}
A、oStringstr;
B、staticintP1=3、14;
C、opublieclassMyClass{//dootherthing...}
D、importjava>awt、*;
解答:D
9、Java提供得許多類在不同得包中,使用下面哪個語句可以引入包中得類。
A、package“B、include
C、import。=D、add
解答:c
H>已知A類被打包在packageA,B類被打包在packageB,且B類被聲明為
pub1ic,且有一個成員變量x被聲明為protected控制方式。C類也位于package
A包,且繼承了B類。則以下說法正確得就是:()
A、A類得實例不能訪問到B類得實例
B、A類得實例能夠訪問到B類一個實例得x成員
C、C類得實例可以訪問到B類一個實例得x成員
D、C類得實例不能訪問到B類得實例
解答:C(太難)
13、在Java中,關(guān)于final關(guān)鍵字得說法正確得就是()
A、如果修飾變量,則一旦賦了值,就等同一個常量。
B、如果修飾類,則該類只能被一個子類繼承。
C、如果修飾方法,則該方法不能在子類中被覆蓋。
D、如果修飾方法,則該方法所在得類不能被繼承。
解答:A,C
14、關(guān)于構(gòu)造方法以下說法錯誤得就是(D)。
(A)構(gòu)造方法名必須與類名一致(B)構(gòu)造方法可以重載
(C)構(gòu)造方法就是通過new來調(diào)用(D)每個類都必須編寫構(gòu)造方法代碼
15、關(guān)于類得定義以下說法錯誤(B)。
(A)類定義使用class關(guān)鍵字(B)每個類中必須有一個main方法
(C)一個包可以包含多個類(D)java中所有類都就是Object類得子類
16、在創(chuàng)建對象時必須(C)
A)先聲明對象,然后才能使用對象
B)先聲明對象,為對象分配內(nèi)存空間,然后才能使用對象
C)先聲明對象,為對象分配內(nèi)存空間,對對象初始化,然后才能使用對象
D)上述說法都對
17、在調(diào)用方法時,若要使方法改變實參得值,可以(B)
A)用基本數(shù)據(jù)類型作為參數(shù)B)用對象作為參數(shù)
C)A與B都對D)A與B都不對
18、關(guān)于以下程序代碼得說明正確得就是(D)
classHasStatic{
叩rivatestaticintx=100;
epubliestaticvoidmain(Stringargs[]){
HasStatichs1=newHasStatic();
shs1>x++;
3HasStatichs2=newHasStatic();
hs2、x++;
□hs1=newHasStatic();
。hs1>x++;
eHasStatic>x--;
oSystem>out、prin11n(“x="+x);
°}
)
A、5行不能通過編譯,因為引用了私有靜態(tài)變量
B、10行不能通過編譯,因為x就是私有靜態(tài)變量
C、程序通過編譯,輸出結(jié)果為:x=103
D、程序通過編譯,輸出結(jié)果為:x=102
19、以下關(guān)于構(gòu)造函數(shù)得描述錯誤得就是(A)。
A、構(gòu)造函數(shù)得返回類型只能就是void型。
B、構(gòu)造函數(shù)就是類得一種特殊函數(shù),它得方法名必須與類名相同。
C、構(gòu)造函數(shù)得主要作用就是完成對類得對象得初始化工作。
D、一般在創(chuàng)建新對象時,系統(tǒng)會自動調(diào)用構(gòu)造函數(shù)。
20、Java中,在如下所示得Test類中,共有(C)個構(gòu)造方法。
publicc1assTest{
privateintx;
pub1icTest(){x=35;}
publicvoidTest(doublef){This>x=(int)f;}
publicTest(Strings){}
)
A、OB、IC、2D、3
21、在Java中,關(guān)于構(gòu)造方法,下列說法錯誤得就是(C)
A、構(gòu)造方法得名稱必須與類名相同
B、構(gòu)造方法可以帶參數(shù)
C、構(gòu)造方法不可以重載
D、構(gòu)造方法絕對不能有返回值
22、在Java語言中,下列關(guān)于類得繼承得描述,正確得就是(B)。
A、一個類可以繼承多個父類
B、一個類可以具有多個子類
C、子類可以使用父類得所有方法
D、子類一定比父類有更多得成員方法
23、分析選項中關(guān)于Java中this關(guān)鍵字得說法正確得就是(A)
A、this關(guān)鍵字就是在對象內(nèi)部指代自身得引用
B、this關(guān)鍵字可以在類中得任何位置使用
C、this關(guān)鍵字與類關(guān)聯(lián),而不就是與特定得對象關(guān)聯(lián)
D、同一個類得不同對象共用一個this
24、在Java接口中,下列選項中有效得方法聲明就是(A)。
A、publicvoidaMethod();
B、pub1icfina1voidaMethod();
C、protectedvoidaMethod();
D、privatevoidaMethod();
25、下列選項中關(guān)于Java中super關(guān)鍵字得說法正確得就是(A)。
A、super關(guān)鍵字就是在子類對象內(nèi)部指代其父類對象得引用
B、super關(guān)鍵字不僅可以指代子類得直接父類,還可以指代父類得父類
C、子類通過super關(guān)鍵字只能調(diào)用父類得方法,而不能調(diào)用父類得屬性
D、子類通過super關(guān)鍵字只能調(diào)用父類得屬性,而不能調(diào)用父類得方法
3、2填空題
1、在Java程序中,通過類得定義只能實現(xiàn)單重繼承,但通過接口得定義
可以實現(xiàn)多多重繼承O
2、一抽象(abstract)方法就是一種僅有方法頭,沒有具體方法體與操作實現(xiàn)得
方法,該方法必須在抽象類之中定義fina1方法就是不能被當(dāng)前類得子類重新定
義得方法。
3、面向?qū)ο蟪绦蛟O(shè)計得三個特征就是封裝、多態(tài)、繼承
4、Java就是面向?qū)ο笳Z言,類就是客觀事物得一抽象—,而對象就是類得一實例0
5、如果在子類中想使用被子類隱藏得父類成員變量或方法,就可以使用關(guān)鍵字—sup
er.
6、Java中有一種叫作構(gòu)造方法一得特殊方法用來對類得對象成員進(jìn)行初始化。
7、JAVA語言中提供了兩種類型得字符串類來處理字符串,它們就是—String.與一
_StringBuffer類
8、Java語言中,所有得類都就是—0bject得子類,Java得窗口通常就是JFra
me_得子類,—抽象一類只能定義但不能被實例化,—最終一類不能被繼承
9、一般Java程序得類體由兩部分組成:一部分就是—屬性一,另一部分就是_方法.
10、分別用_clas5_關(guān)鍵字來定義類,用一new—關(guān)鍵字來分配實例存儲空間。
11>Java中類成員得限定詞有以下幾種:___private____,public_____,
protected______,_缺省__?其中,_publie—得限定得范圍最大.類中限定為_p
rivate_得成員,只能被這個類本身內(nèi)部訪問。
12、Java類中,如果類得定義者沒有顯式得定義任何構(gòu)造方法,系統(tǒng)將自動提供一個—
無參默認(rèn)—構(gòu)造方法.
13、在子類中定義與父類得相同得方法,若在多個子類中定義相同得方法,則可以調(diào)用不
同子類中得相同方法而實現(xiàn)不同得功能,這實現(xiàn)了程序運行時得多態(tài)。
3、3簡答題
1、簡單闡述方法得重載與方法得重寫之間得區(qū)別
解答:
重寫就是子類得方法覆蓋父類得方法,要求方法名與參數(shù)都相同
重載就是在同一個類中得兩個或兩個以上得方法,擁有相同得方法名,但就是參數(shù)卻不
相同
2、簡述實例變量與類變量得區(qū)別。
解答:類變量也叫靜態(tài)變量,也就就是在變量前加了static得變量;實例變量也叫對
象變量,即沒加static得變量;
區(qū)別在于:類變量就是所有對象共有,其中一個對象將它值改變,其她對象得到得就就
是改變后得結(jié)果;而實例變量則屬對象私有,某一個對象將其值改變,不影響其她對象;
2、簡述實例方法與類方法得區(qū)別
解答:實例方法可以對當(dāng)前對象得實例變量進(jìn)行操作,也可以對類變量進(jìn)行操作,實
例方法由實例對象調(diào)用。但類方法不能訪問實例變量,只能訪問類變量.類方法可以由類名直
接調(diào)用,也可由實例對象進(jìn)行調(diào)用。類方法中不能使用this或super關(guān)鍵字。
3、面向?qū)ο蟮萌齻€基本特征就是什么,分別簡單介紹每個特征。
解答:三大特性就是:封裝,繼承,多態(tài)。
封裝性就就是把對象得屬性與服務(wù)結(jié)合成一個獨立得單位,并盡可能隱蔽對象得內(nèi)部
細(xì)節(jié)。
特殊類得對象擁有其一般類得全部屬性與服務(wù),稱作特殊類對一般類得繼承.
對象得多態(tài)性就是指在一般類中定義得屬性或服務(wù)被特殊類繼承之后,可以具有不同
得數(shù)據(jù)類型或表現(xiàn)出不同得行為。這使得同一個屬性或服務(wù)在一般類及其各個特殊類中具
有不同得語義.
4、簡單闡述成員變量與局部變量得區(qū)別.
解答:
1)成員變量在整個類內(nèi)都有效,局部變量只在定義它得方法內(nèi)有效.
2)成員變量又分為實例成員變量(簡稱實例變量)與類變量(也稱靜態(tài)變量),如果成員變
量得類型前面加上關(guān)鍵字static,這樣得成員變量稱為類變量或靜態(tài)變量。
3)如果局部變量得名字與成員變量得名字相同,則成員變量被隱藏,也就就是說,這個
成員變量在這個方法內(nèi)暫時失效.這時如果想在該方法內(nèi)使用成員變量,必須使用關(guān)鍵字th
iSo
5、簡述對象得引用與實體。
解答:當(dāng)用類創(chuàng)建一個對象時,類中得成員變量被分配內(nèi)存空間,這些內(nèi)存空間稱為該
對象得實體,而對象中存放著引用,以確保實體由該對象操作使用。沒有實體得對象稱為空
對象,空對象不能使用,即不能讓一個空對象去調(diào)用方法產(chǎn)生行為.
6、簡述this關(guān)鍵字得意義,以及它在成員方法與構(gòu)造方法中如何使用。
解答:this就是Java得一個關(guān)鍵字,表示某個對象。this可以出現(xiàn)在實例方法與構(gòu)造方
法中,但不可以出現(xiàn)在類方法中.this可以出現(xiàn)在實例方法與構(gòu)造方法中,但不可以出現(xiàn)在
類方法中。this關(guān)鍵字出現(xiàn)在類得構(gòu)造方法中時,代表使用該構(gòu)造方法所創(chuàng)建得對象.實例
方法必須通過對象來調(diào)用,當(dāng)this關(guān)鍵字出現(xiàn)在類得實例方法中時,代表正在調(diào)用該方法得
當(dāng)前對象.
成員函數(shù)中定義了與成員變量中相同得變量時,引用成員變量要用this;構(gòu)造函數(shù)中調(diào)
用同一個類得其她構(gòu)造函數(shù)時用thiSo
7、簡單描述Java得參數(shù)傳值中得兩種方式,基本數(shù)據(jù)類型參數(shù)得傳值與引用類型參數(shù)
得傳值?
解答:在基本數(shù)據(jù)類型參數(shù)得傳值中,基本數(shù)據(jù)類型得參數(shù)向該參數(shù)傳遞得值得級別不
可以高于該參數(shù)得級別.
在引用類型參數(shù)得傳值中Java得引用類型數(shù)據(jù)包括對象、數(shù)組與接口,當(dāng)參數(shù)就是引用
類型時,“傳值”傳遞得就是變量得引用而不就是變量所引用得實體。如果改變參數(shù)變量所引
用得實體,就會導(dǎo)致原變量得實體發(fā)生同樣得變化,但就是如果改變參數(shù)得引用不會影響向
其傳值得變量得引用。
8、基本數(shù)據(jù)類型與對象作為參數(shù)傳遞得不同?
解答:
(1)基本數(shù)據(jù)類型作為參數(shù)在方法中傳遞得就是值傳遞。
(2)對象就是引用傳遞,當(dāng)對象作為參數(shù)傳遞時,傳遞得就是對象得地址.
3、4綜合題
1、定義一個“點”(Point)類用來表示三維空間中得點,類體得成員變量x,y,z分
別表示三維空間得坐標(biāo)。類體中具有如下成員方法得定義:
1)構(gòu)造方法Point。可以生成具有特定坐標(biāo)得點對象.
2)setX(),setY(),setZ()為可以設(shè)置三個坐標(biāo)得方法。
3、)getDistance()為可以計算該點距離原點距離平方得方法.
解答:
classPoint{
doublex,y,z;
6Point(doub1e_x,double_y,double_z)
bX=—X;
°y=_y;
z=_z;
)
voidsetX(doub1e_x){
3X=_X;
}
voidsetY(double_y){
°y=_y;
voidsetZ(doub1e_z){
z=_z;
}
doublegetDistance(){
return(x*x+y*y+z*z);
}
2、編寫一個Java應(yīng)用程序Test類,實現(xiàn)成員方法max(a,b)得重載.具體要求如下:
a)編寫voidmax(inta,intb)成員方法,對兩個整數(shù)進(jìn)行大小得比較,輸出打印較大
得那個整數(shù)。
b)。編寫voidmax(floata,f1oatb)成員方法,對兩個f1oat數(shù)進(jìn)行大小得比較,輸出打印
較大得那個float數(shù)。
c)編寫voidmax(doublea,doubleb)成員方法,對兩個doub1e數(shù)進(jìn)行大小
得比較,輸出打印較大得那個double數(shù)。
publicclassTest{
voidmax(inta,intb){
eSystem>out、printIn(a>b?a:b);
)
voidmax(f1oata,floatb){
^System>out>println(a>b?a:b);
)
woidmax(doublea,doubleb){
System>out>println(a>b?a:b);
6)
叩ubliestaticvoidmain(String[]args){
“Testt=newTest();
M、max(3,4);
°)
)
3、編寫一個矩形類對數(shù)學(xué)中得矩形進(jìn)行抽象描述,并具有方法可以計算矩形得周長與面積,
具體分為以下三個子任務(wù)完成。
(1)創(chuàng)建Rectangle類,添加屬性width、height,并定義構(gòu)造方法Rectangle(double
_width,double_height);
(2)在Rectangle類中添加兩種方法putCireum()與putArea()分別計算矩形得周
長與面積;
(3)編程利用Rectangle對象輸出一個30*40得矩形得周長與面積。
解答:
pub1icclassTestRectang{
opub1icstaticvoidmain(String[]args){
s//TODOAuto-generatedmethodstub
。Rectang1erecti=newRectangle(20,30);
oSystem、out>print1n(rectl>putArea());
System、out>printIn(rectl>putCircum());
°}
}
c1assRectangle{
doublewidth,height;
Rectang1e(){
。width=0;
。。height=0;
)
Rectangle(double_width,double_height){
「width=_width;
。height=_height;
6}
3doubleputArea(){
。returnwidth*height;
°}
doubleputCircum(){
。return2*(width+height);
}
)
第4章繼承、接口與內(nèi)部類
4、1單項選擇題
1、Java中用于定義接口得關(guān)鍵字就是()
A、importB、package
C、c1assooD>interface
解答:D
2、以下關(guān)于abstract得說法,正確得就是()
A、abstract只能修飾類
B>abstract只能修飾方法
C、abstract類中必須有abstract方法
D、abstarct方法所在得類必須用abstract修飾
解答:D
3、下列哪種說法就是正確得()
A、私有方法不能被子類覆蓋。
B、子類可以覆蓋超類中得任何方法。
C、覆蓋方法可以聲明自己拋出得異常多于那個被覆蓋得方法。
D、覆蓋方法中得參數(shù)清單必須就是被覆蓋方法參數(shù)清單得子集。
解答:A
4、關(guān)于類繼承得說法,正確得就是()
A、Java類允許多重繼承
B、Java接口允許多繼承
C、接口與類都允許多繼承
D、接口與類都不允許多繼承
解答:B
5、關(guān)于抽象類,正確得就是。
A、抽象類中不可以有非抽象方法
B、某個非抽象類得父類就是抽象類,則這個子類必須重載父類得所有抽象方法
C、可以用抽象類直接去創(chuàng)建對象
D、接口與抽象類就是同一個概念
解答:B
8、抽象類A與抽象類B得定義如下:
abstractclassA{
abstractintgetinfo();
)
publicclassBextendsA{
eprivateinta=0;
publieintgetinfo(){
aoreturna;
}
epublicstaticvoidmain(Stringargs[]){
eBb=newB();
eSystem>out、println(b、getinfo());
)
關(guān)于上述代碼說明正確得就是()o
A、輸出結(jié)果為0-B、通過編譯但沒有輸出任何結(jié)果
C、第5行不能通過編譯oD、程序第2行不能通過編譯
解答:A
9、下面程序得運行結(jié)果就是
classex4_5_11_A{
protectedstaticintcount=0;
-publicex4_5_ll_A(){
笛ount++;
}
classex4_5_11_Bextendsex4_5_11_A{
publicex4(){
8count++;
)
classex4_5_11{
epublicstaticvoidmain(Stringargs[]){
gex4_5_11_Bx=newex4_5_11_B();
gSystem、out、printin("count="+x、count);
6)
}
A、count=1eoB、count=2
C、count=3ogD、count=4
解答:B
10、設(shè)有下面兩個類得定義:
classPerson
{s1ongid;//身份證號
Stringname;//姓名
}
classStudentextendsPerson
{intscore;//入學(xué)總分
intgetScore(){
returnscore;
)
)
e問:類Person與類Student得關(guān)系就是()
A、包含關(guān)系6°B、繼承關(guān)系
C、關(guān)聯(lián)關(guān)系。D、無關(guān)系,上述類定義有語法錯誤
解答:B
11、以下程序代碼錯誤得就是(B)o
abstractclassP{}
c1assAextendsP{}
abstractclassBextendsP{}
(A)Pp=newA();(B)Pp=newB();
(C)Aa=newA();(D)Pp=newP(){voidfoo(){}};
12、下面就是People與Child類得定義與構(gòu)造方法,每個構(gòu)造方法都輸出編號。在
執(zhí)行newChild("mike")得時候都有哪些構(gòu)造方法被順序調(diào)用?請選擇輸出結(jié)果(D)
classPeop1e{
Stringname;
publicPeop1e(){
System、out>print(1);
}
pub1icPeople(Stringname){
System>out>print(2);
this>name=name;
)
)
c1assChiIdextendsPeople{
Peoplefather;
pub1icChild(Stringname){
System>out>print(3);
this>name=name;
father=newPeop1e(name+":F'>
)
publicChi1d(){
System>out>print(4);
}
}
A312B32C432D132
13、選項中哪一行代碼可以替換題目中//addcodehere而不產(chǎn)生編譯錯誤?(A)
pub1icabstractclassMyClass{
pub1icintconstInt=5;
//addcodehere
publicvoidmethod(){
}
)
Apublicabstractvoidmethod(inta);
Bconstlnt=constlnt+5;
Cpublicintmethod();
Dpub1icabstractvoidanotherMethod(){}
15、以下哪項就是接口得正確定義?(D)
A、interfaceB{voidprint(){}}
溫馨提示
- 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)轉(zhuǎn)讓與產(chǎn)業(yè)園區(qū)配套設(shè)施建設(shè)合同3篇
- 個人貸款延期合同書2024版標(biāo)準(zhǔn)格式版B版
- 二零二五年度啤酒節(jié)場地租賃合同(含設(shè)備安裝與維護(hù)服務(wù))3篇
- 2025年度朋友合資經(jīng)營兒童游樂場合同4篇
- 二零二五版綠色建筑項目材料集中采購合同3篇
- 二零二五年度內(nèi)墻膩子產(chǎn)品責(zé)任保險合同
- 2025年度生態(tài)旅游區(qū)臨設(shè)轉(zhuǎn)讓及生態(tài)保護(hù)合同4篇
- 2025版土地居間業(yè)務(wù)規(guī)范化合同書(正規(guī)范本)6篇
- 二零二五年度啤酒產(chǎn)品節(jié)慶活動專用代理合同
- 二零二五年度二手車買賣及二手車評估合同協(xié)議2篇
- 2023年廣東省公務(wù)員錄用考試《行測》真題及答案解析
- 2024年公證遺產(chǎn)繼承分配協(xié)議書模板
- 燃?xì)饨?jīng)營安全重大隱患判定標(biāo)準(zhǔn)課件
- 深圳小學(xué)英語單詞表(中英文)
- 護(hù)理質(zhì)量反饋內(nèi)容
- 山東省濟寧市2023年中考數(shù)學(xué)試題(附真題答案)
- 抖音搜索用戶分析報告
- 鉆孔灌注樁技術(shù)規(guī)范
- 2023-2024學(xué)年北師大版必修二unit 5 humans and nature lesson 3 Race to the pole 教學(xué)設(shè)計
- 供貨進(jìn)度計劃
- 彌漫大B細(xì)胞淋巴瘤護(hù)理查房
評論
0/150
提交評論