類和對象練習(xí)題_第1頁
類和對象練習(xí)題_第2頁
類和對象練習(xí)題_第3頁
類和對象練習(xí)題_第4頁
類和對象練習(xí)題_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

類和對象練習(xí)題類和對象練習(xí)題類和對象練習(xí)題資料僅供參考文件編號:2022年4月類和對象練習(xí)題版本號:A修改號:1頁次:1.0審核:批準(zhǔn):發(fā)布日期:類和對象一、選擇題1、下面對方法的作用描述不正確的是:(d)A、使程序結(jié)構(gòu)清晰B、功能復(fù)用C、代碼簡潔D、重復(fù)代碼2、方法內(nèi)定義的變量:(b)A、一定在方法內(nèi)所有位置可見B、可能在方法內(nèi)的局部位置可見C、在方法外可以使用D、在方法外可見3、方法的形參:(a)A、可以沒有B、至少有一個C、必須定義多個形參D、只能是簡單變量4、方法的調(diào)用:(c)A、必須是一條完整的語句B、只能是一個表達(dá)式C、可能是語句,也可能是表達(dá)式D、必須提供實(shí)際參數(shù)5、return語句:(dd)A、不能用來返回對象B、只可以返回數(shù)值C、方法都必須含有D、一個方法中可以有多個return語句6、void的含義:(dd)A、方法體為空B、方法體沒有意義C、定義方法時必須使用D、方法沒有返回值7、main()方法的返回類型是:(cc)A、booleanB、intC、voidD、static8、方法重載所涉及的方法:(a)A、有相同的名字B、參數(shù)個數(shù)必須不同C、參數(shù)類型必須不同D、返回類型必須不同9、下面關(guān)于類和對象之間關(guān)系的描述,正確的是(cc)A、聯(lián)接關(guān)系B、包含關(guān)系C、具體與抽象的關(guān)系D、類是對象的具體化10、下面關(guān)于java中類的說法哪個是不正確的(c)A、類體中只能有變量定義和成員方法的定義,不能有其他語句。B、構(gòu)造方法是類中的特殊方法。C、類一定要聲明為public的,才可以執(zhí)行。D、一個java文件中可以有多個class定義。11、下列哪個類聲明是正確的(d)

A、publicvoidH1{…}B、publicclassMove(){…}

C、publicclassvoidnumber{}D、publicclassCar{…}12、下面的方法聲明中,哪個是正確的(cc)A、publicclassmethodName(){}B、publicvoidintmethodName(){}C、publicvoidmethodName(){}D、publicvoidmethodName{}13、下述哪些說法是不正確的(b)A、實(shí)例變量是類的成員變量B、實(shí)例變量是用static關(guān)鍵字聲明的C、方法變量在方法執(zhí)行時創(chuàng)建D、方法變量在使用之前必須初始化14、下面對構(gòu)造方法的描述不正確是(bb)。A、系統(tǒng)提供默認(rèn)的構(gòu)造方法 B、構(gòu)造方法可以有參數(shù),所以也可以有返回值C、構(gòu)造方法可以重載 D、構(gòu)造方法可以設(shè)置參數(shù)15、定義類頭時,不可能用到的關(guān)鍵字是(bbb)。A、classB、privateC、extendsD、public16、下列類頭定義中,錯誤的是(a)。A、publicxextendsy{...}B、publicclassxextendsy{...}C、classxextendsyimplementsy1{...}D、classx{...}17、設(shè)A為已定義的類名,下列聲明A類的對象a的語句中正確的是(d)。A、floatAa;B、publicAa=A();C、Aa=newint();D、staticAa=newA();18、設(shè)i,j為類X中定義的int型變量名,下列X類的構(gòu)造方法中不正確的是(a)。A、voidX(intk){i=k;}B、X(intk){i=k;}C、X(intm,intn){i=m;j=n;}D、X(){i=0;j=0;}19、有一個類A,以下為其構(gòu)造方法的聲明,其中正確的是(b)。A、voidA(intx){...}B、publicA(intx){...}C、publica(intx){...}D、staticA(intx){...}20、下列方法定義中,不正確的是(c)。A、floatx(inta,intb){return(a-b);}B、intx(inta,intb){returna-b;}C、intx(inta,intb);{returna*b;}D、intx(inta,intb){return*(a+b);}21、設(shè)i,j為類X中定義的double型變量名,下列X類的構(gòu)造方法中不正確的是(a)。A、doubleX(doublek){i=k;returni;}B、X(){i=6;j=8;}C、X(doublem,doublen){i=m;j=n;}D、X(doublek){i=k;}22、設(shè)ClassA為已定義的類名,下列聲明ClassA類的對象ca的語句中正確的是(a)。A、publicClassAca=newClassA();B、publicClassAca=ClassA();C、ClassAca=newclass();D、caClassA;23、設(shè)m,n為類A中定義的int型變量名,下列A類的構(gòu)造方法中不正確的是(a)。A、voidA(intk){m=k;}B、A(intk){m=k;}C、A(intm,intn){m=i;n=j;}D、A(){m=0;n=0;}24、設(shè)i、j、k為類School中定義的int型變量名,下列類School的構(gòu)造方法中不正確的是(b)。A、School(intm){...}B、voidSchool(intm){...}C、School(intm,intn){...}D、School(inth,intm,intn){...}25、下列選項(xiàng)中,哪個是java語言所有類的父類(c)A、StringB、VectorC、ObjectD、KeyEvent26、Java中所有的類都是通過直接或間接地繼承(a)類得到的。()A、B、C、任意類D、以上答案都不對27、對于任意一個類,用戶所能定義的構(gòu)造方法的個數(shù)至多為(d)。A、0個

B、1個

C、2個

D、任意個

28、構(gòu)造方法何時被調(diào)用(b)A、類定義時 B、創(chuàng)建對象時C、調(diào)用對象方法時D、使用對象的變量時29、類Test1定義如下

publicclassTest1{

publicfloataMethod(floata,floatb){}

(b)

}

將以下哪種方法插入()是不合法的。()

A、

publicfloataMethod(floata,floatb,floatc){}

B、

publicfloataMethod(floatc,floatd){}

C、

publicintaMethod(inta,intb){}

D、publicintaMethod(inta,intb,intc){}

30、用來導(dǎo)入已定義好的類或包的語句是(b)A、mainB、importC、publicclassD、class31、類是具有相同(a)的集合,是對對象的抽象描述。()A、屬性和方法B、變量和方法C、變量和數(shù)據(jù)D、對象和屬性32、一個對象的生命周期分(c)3個階段。()A、使用、生成和清除B、清除、使用和生成C、生成、使用和清除D、生成、清除和使用33、以下(a)是專門用于創(chuàng)建對象的關(guān)鍵字。()A、newB、doubleC、classD、int34、表達(dá)式(c)將返回當(dāng)前的系統(tǒng)時間和日期()A、B、newDataC、()D、newCurrentData35、()為程序員提供了一些可完成通用任務(wù)的現(xiàn)有類(A)A、Java類庫B、preExistingC、java代碼D、library關(guān)鍵字36、程序員通常會使用(C)A、程序員定義的方法B、現(xiàn)有的方法C、程序員定義的得帶以及現(xiàn)有的方法D、既不是程序員定義的方法也不是現(xiàn)有的方法37、利用方法中的()語句可為調(diào)用方法返回一個值(A)A、returnB、backC、endD、以上答案都不對38、(A)方法用做返回兩個參數(shù)中的較大值()A、maxB、maximumC、largerD、greater39、(D)將被傳送至一個被調(diào)用的方法()A、返回值B、返回類型C、參數(shù)表D、參數(shù)列表40、方法的參數(shù)可以是(D)A、常量B、表達(dá)式C、變量D、以上答案都對41、()是位于方法頭中的一個以逗號分隔的聲明列表(B)A、參數(shù)表B、參數(shù)列表C、值表D、變量表42、方法的定義是由()組成的(D)A、一個方法B、一個方法體C、一對花括號D、以上答案都對43、一個(D)對象將包括int型數(shù)據(jù)()A、IntegerObjectB、IntC、IntDataD、Integer44、在方法調(diào)用過程中。位于方法名之后圓括號的變量被稱為(B)A、變元B、參數(shù)C、語句D、聲明45、一條return語句將給調(diào)用程序返回(D)個值()A、0B、1C、任意數(shù)量D、A和B46、方法的第一行被稱為方法的(D)A、方法體B、標(biāo)題C、調(diào)用者D、方法頭47、實(shí)例變量的作用域整個的(C)A、語句塊B、方法C、類D、以上答案都不對48、在某個方法內(nèi)部定義的變量被稱為(B)A、實(shí)例變量B、局部變量C、類變量D、隱藏變量49、在一個類的內(nèi)部聲明,但又處于該類方法外部的變量被稱為(C)A、局部變量B、隱藏變量C、實(shí)例變量D、常量50、從定義局部變量語句的外部訪問該局部變量,會導(dǎo)致()出現(xiàn)(A)A、邏輯出錯B、編譯錯誤C、運(yùn)行錯誤D、以上答案都不對51、實(shí)例變量(D)A、是在一個類的內(nèi)部聲明的變量B、的作用域?yàn)檎麄€類C、可被同一類中的任何方法所訪問D、以上答案都對52、當(dāng)方法內(nèi)傳遞一個參數(shù)時,將該參數(shù)值的一個拷貝傳遞給方法的傳遞方式稱為(B)A、調(diào)用傳遞B、值傳遞C、引用傳遞D、方法傳遞53、當(dāng)一個變量在應(yīng)用程序的整個生命周期中被使用,且整個過程中的其他值也不能被改變時,那么將他聲明為一個(B)A、局部變量B、常量C、實(shí)例變量D、以上答案都不對54、關(guān)鍵字()表示一個類定義的開始(C)A、declareB、newC、classD、以上答案都不對55、類的定義必須包含在一對()內(nèi)(B)A、方括號B、花括號C、逗號D、圓括號56、實(shí)例變量的初始化(B)A、是在他們聲明時完成B、將被設(shè)置為默認(rèn)值C、是在一個構(gòu)造方法中完成的D、以上答案都對57、某個方法,在保證參數(shù)值有效性的前提下設(shè)置其實(shí)例變量number,該方法的方法名最好?。–)A、numberB、setC、setNumberD、setValue58、某個方法,在保證參數(shù)值有效性的前提下獲取其實(shí)例變量number,該方法的方法名最好?。–)A、numberB、getC、getNumberD、getValue59、通過使用關(guān)鍵字()創(chuàng)建對象(D)A、objectB、instantiateC、createD、new60、參照以下Java代碼,以下四個敘述中最確切的是(C)classA{intx;staticinty;voidfac(Strings){System.out.println("字符串:"+s);}}A、x、y和s都是成員變量B、x是實(shí)例變量、y是類變量、s是局部變量C、x和y是實(shí)例變量、s是參數(shù)D、x、y和s都是實(shí)例變量61、下列關(guān)于變量作用域的描述中,不正確的一項(xiàng)是(C)A、變量屬性是用來描述變量作用域的B、局部變量作用域只能是它做在的方法代碼段內(nèi)C、類變量能在類的方法中聲明D、類變量的作用域是整個類62、下列關(guān)于變量作用域的說法中,正確的一項(xiàng)是(B)A、方法參數(shù)的作用域是方法外部代碼段B、異常處理參數(shù)的作用域是方法外部代碼段C、局部變量的作用域是整個類D、類變量的作用域是類的某個方法63、System類在哪個包中(D)A、B、C、D、64、給出下面代碼段

1)publicclassTest{

2)intm,n;

3)publicTest(){}

4)publicTest(inta){m=a;}

5)publicstaticvoidmain(Stringarg[]){

6)Testt1,t2;

7)intj,k;

8)j=0;k=0;

9)t1=newTest();

10)t2=newTest(j,k);

11)}

12)}

哪行將引起一個編譯時錯誤(D)A、line3B、line5C、line6D、line1065、對于下列代碼、1)classPerson{2)publicvoidprintValue(inti,intj){}3)publicvoidprintValue(inti){}4)}5)publicclassTeacherextendsPerson{6)publicvoidprintValue(){}7)publicvoidprintValue(inti){}8)publicstaticvoidmain(Stringargs[]){9)Persont=newTeacher();10)(10);11)}第10行語句將調(diào)用哪行語句()A、line2B、line3C、line6D、line766、下列關(guān)于構(gòu)造方法的說話正確的是(B)A、類中的構(gòu)造方法不可省B、構(gòu)造方法必須與類同名,但方法不能與class同名C、類的構(gòu)造方法在一個對象被創(chuàng)建時自動執(zhí)行D、一個類只能定義一個構(gòu)造方法67、下列語句中,對構(gòu)造方法的描述錯誤的是(D)A、構(gòu)造方法的名稱必須和類名相同B、構(gòu)造方法沒有返回值,返回類型也不能用voidC、構(gòu)造方法在一個類中可以多次出現(xiàn)D、當(dāng)重寫了帶參數(shù)的構(gòu)造方法,系統(tǒng)默認(rèn)的不帶參數(shù)的構(gòu)造方法依然存在68、下面關(guān)于java中類的說法哪個是不正確的(A)A、類體中只能有變量定義和成員方法的定義,不能有其他語句B、構(gòu)造方法是類中的特殊方法C、類一定要聲明為public的,才可以執(zhí)行D、一個java文件中可以有多個class定義69、下列哪個不是面向?qū)ο蟮娜筇匦灾唬―)A、封裝性B、繼承性C、多態(tài)性D、重載70、下面哪種語言不是面向?qū)ο笳Z言(C)A、javaB、C++C、CD、Smalltalk71、在創(chuàng)建對象時必須(D)A、先聲明對象,然后才能使用對象B、先聲明對象,為對象分配內(nèi)存空間,然后才能使用對象C、先聲明對象,為對象分配內(nèi)存空間,對對象初始化,然后才能使用對象D、上述說法都對72、以下敘述不正確的是(D)A、面向?qū)ο蠓椒ㄗ非蟮哪繕?biāo)是、盡可能地運(yùn)用人類自然的思維方式來建立問題空間的模型,構(gòu)造盡可能直觀、自然的表達(dá)求解方法的軟件系統(tǒng)。B、面向?qū)ο蠓椒ǖ膬?yōu)點(diǎn)有、易于維護(hù),可重用性好,易于理解、擴(kuò)充和修改。C、面向?qū)ο螅綄ο螅诸悾^承+消息通信。D、面向?qū)ο蟮幕咎卣魇欠庋b性、繼承性和并行性。73、對于構(gòu)造函數(shù),下列敘述不正確的是(B)。A、構(gòu)造函數(shù)是類的一種特殊函數(shù),它的方法名必須與類名相同。B、構(gòu)造函數(shù)的返回類型只能是void型。C、構(gòu)造函數(shù)的主要作用是完成對類的對象的初始化工作。D、一般在創(chuàng)建新對象時,系統(tǒng)會自動調(diào)用構(gòu)造函數(shù)。二、填空題1、通常用關(guān)鍵字NEW來新建對象,通過類創(chuàng)建對象的基本格式為:類名對象名=new構(gòu)造方法();。2、通過類MyClass中的不含參數(shù)的構(gòu)造方法,生成該類的一個對象obj,可通過以下語句實(shí)現(xiàn)Myclassobj=newMyclass();。3、面向?qū)ο蟪绦蛟O(shè)計的主要特點(diǎn)是繼承、多態(tài)和封裝。4、構(gòu)造方法是類中的一種特殊方法,它用來定義對象的初始化。5、在Java程序中定義的類中包括有兩種成員,分別是:成員變量、成員方法。6、用static修飾的方法,稱為靜態(tài)方法。它們不是對象的方法,而是整個類的方法。靜態(tài)方法只能處理用關(guān)鍵字修飾的數(shù)據(jù)。7、列舉三個常用類庫的包、、和。8、Java中所有類都是類Object的子類。9、Java中類成員的限定詞有以下幾種:private、public、friendly、protected其中,public的限定的范圍最大。10、被關(guān)鍵字final/private修飾的方法是不能被當(dāng)前類的子類重新定義的方法。11、JAVA程序的基本元素是類。12、class是JAVA語言中定義類時必須使用的關(guān)鍵字。13、定義在類中方法之外的變量稱為成員變量。14、方法聲明包括方法頭和方法體兩部分。15、方法頭確定方法的方法名,形式參數(shù)的名字和類型、返回值的類型和緋聞限制。16、方法體由包括在花括號內(nèi)的聲明部分和語句部分組成,描述方法的功能。17、類頭定義的基本格式要求為__修飾符___、__class關(guān)鍵字___、_____類名__和__花括號__。18、對象是指Java程序通過規(guī)則引擎調(diào)用此規(guī)則包時,將數(shù)據(jù)存儲在Java的類中,以對象的形式傳入。19、在Java類對象的編輯窗口中直接輸入需要導(dǎo)入的類的完成類名。20、類是Java的核心內(nèi)容,是用來創(chuàng)建對象的模板。21、類有兩種基本成員是方法和成員變量。22、一個Java源文件就是由若干個類構(gòu)成的。23、類是抽象,而對象是具體。24、.對象的創(chuàng)建、創(chuàng)建對象的過程就是類的實(shí)例化的過程25、對象的創(chuàng)建的步驟對象的聲明、及對象的實(shí)例化。26、使用new運(yùn)算符實(shí)例化一個已經(jīng)聲明的類27、實(shí)例化一個對象時,會同時調(diào)用類的構(gòu)造方法對它進(jìn)行。28、類的是特殊的類方法,它必須和類同名,并且不能有返回類型,也不能用void來標(biāo)注。29、構(gòu)造方法是具有特殊地位的方法,不可以調(diào)用構(gòu)造方法。30、一個類中可以有多個31、類里面如果沒有,系統(tǒng)會調(diào)用默認(rèn)的構(gòu)造方法,默認(rèn)的構(gòu)造方法是不帶任何參數(shù)的。32、包主要來解決的問題。33、既是命名機(jī)制,又是可見度控制機(jī)制。34、java語言的屬性與方法的引用均使用___運(yùn)算符。35、定義類時通常使用關(guān)鍵字____,,___。36、寫出成員變量的定義格式_________。37、對象的生命周期包括三個階段、、。38、Java中類成員的訪問控制符有以下幾種、private,public,_____,______。其中,________的限定的范圍最大。39、Java中所有類都是類___的子類。Applet類是系統(tǒng)類___類的子類,存在于____包中。40、按作用域分類,變量有局部變量、_______、方法變量和異常處理參數(shù)。41、JAVA語言通過接口支持_________繼承,使類繼承具有更靈活的擴(kuò)展性。42、JAVA語言中______類是所有類的根。三、程序填空1、請寫出下面程序的運(yùn)行結(jié)果。package

abstract

class

A

{

private

int

x

=

100;

public

A(){

();

}

public

abstract

void

print();

}

class

B

extends

A

{

private

int

x

=

200;

public

B(int

x){

=

x;

}

public

void

print(){

"x="

+

x);

}

}

public

class

TestJava

{

private

void

mian()

{

A

a

=

new

B(20);

}

}

程序運(yùn)行結(jié)果為:2、請寫出下面程序的運(yùn)行結(jié)果。publicclassTestextendsTT{publicvoidmain(Stringargs[]){Testt=newTest("Tom");}publicTest(Strings){super(s);"Howdoyoudo");}publicTest(){this("IamTom");}}classTT{publicTT(){"Whatapleasure!");}publicTT(Strings){this();"Iam"+s);}}程序運(yùn)行結(jié)果為:3、閱讀下列程序,寫出程序運(yùn)行的結(jié)果:publicclassTest{

publicstaticvoidmain(String[]args){

Strings1=newString("Hello");

Strings2="Hello";

Strings3="Hello";

Strings4=s1;

}}程序運(yùn)行結(jié)果為:4、publicclassTest{

privatestaticvoidprintArray(int[]arr)

{

for(inti=0;i<;i++)

",");

"\n");

}

privatestaticvoidchangeValue(intvalue){

value*=2;

}

privatestaticvoidchangeValue(int[]arr){

for(inti=0;i<;i++)

arr[i]*=2;

}

publicstaticvoidmain(String[]args){

int[]arr={1,2,3,4,5};

changeValue(arr[0]);

printArray(arr);

changeValue(arr);

printArray(arr);

}}程序運(yùn)行結(jié)果為:5、classMyExceptionextendsException{

publicMyException(Stringmessage){

super(message);

}

}

publicclassTest{

privatestaticvoidfun1()throwsMyException{

thrownewMyException("AnMyExceptionobjectisthrowninfun1().");

}

privatestaticvoidfun2()throwsMyException{

try

{

fun1();

}

catch(NullPointerExceptionex)

{

"NullPointerException、"+());

}

finally

{

"Gothroughfinallycodeinfun2().");

}

}

publicstaticvoidmain(String[]args){

try{

fun2();

}

catch(MyExceptionex){

"MyException:"+());

}

catch(Exceptionex){

"Exception:"+());

}

}}程序運(yùn)行結(jié)果為:6、下面是一個類的定義,請完成程序填空。publicclass__________{intx,y;Myclass(int,int)width);"體積="+());}}程序運(yùn)行結(jié)果為:17、閱讀下列程序,寫出程序運(yùn)行的結(jié)果:classSuperClass{intx=10;inty=20;publicvoidshow(){"我是父類的成員方法!");}}classSubClassextendsSuperClass{intz=30;}publicclassJC{publicstaticvoidmain(String[]args){SuperClassfather=newSuperClass();SubClasschild=newSubClass();"父類SuperClass成員變量、"++","+;"子類SubClass成員變量、"++","++","+;}}程序運(yùn)行結(jié)果為:18、閱讀下列程序,寫出程序運(yùn)行的結(jié)果:publicclassClass431{publicstaticvoidmain(String[]args){inta=3;charm='a';prt("minmain="+m);prt("ainmain="+a);prt("returnfromtest2:"+test2());prt("m+a="+test1(m,a));}staticfloattest1(charx,inty){intz=x+y;returnz;}staticfloattest2(){inta=60;for(inti=8;i<12;i++)a=a+i;prt("aintest2is:"+a);returna;}staticvoidprt(Strings){}}程序運(yùn)行結(jié)果為:19、閱讀下列程序,寫出程序運(yùn)行的結(jié)果:publicclassClass432{staticinti=123;publicstaticvoidmain(String[]args){inti=456;"main()中的i="+i);m1();m2();}staticvoidm1(){inti=789;"m1()中的i="+i);}staticvoidm2(){"類變量i="+i);i+=6;"加6后的類變量i="+i);}}程序運(yùn)行結(jié)果為:20、下面程序的結(jié)果是什么classTester{intvar;Tester(doublevar){=(int)var;}Tester(intvar){

溫馨提示

  • 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

提交評論