經(jīng)典演講稿Java面試題及答案_第1頁
經(jīng)典演講稿Java面試題及答案_第2頁
經(jīng)典演講稿Java面試題及答案_第3頁
經(jīng)典演講稿Java面試題及答案_第4頁
經(jīng)典演講稿Java面試題及答案_第5頁
已閱讀5頁,還剩288頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

一.選擇題(234)

1.下面中哪兩個可以在A的子類中使用:()

classA(

protectedintmethodi(inta,intb)(

return0;

)

)

A.publicintmethod1(inta,intb){return0;}

B.privateintmethod1(inta,intb){return0;}

C.privateintmethod1(inta,longb){return0;)

D.publicshortmethodi(inta,intb){return0;}

解答:AC

主要考察子類重寫父類的方法的原那么

B,子類重寫父類的方法,訪問權(quán)限不能降低

C,屬于重載

D,子類重寫父類的方法返回值類型要一樣或是父類方法返回值類型的子類

2.Abstractmethodcannotbestatic.TrueorFalse?

ATrue

BFalse

解答:A

抽象方法可以在子類中被重寫,但是靜態(tài)方法不能在子類中被重寫,靜態(tài)方法和靜態(tài)屬性與對象是

無關(guān)的,只與類有關(guān),這與abstract是矛盾的,所以abstract是不能被修飾為static,否那么就

失去了abstract的意義了

3.Whatwillbetheoutputwhenyoucompileandexecutethefollowingprogram,

classBase

(

voidtest(){

)

)

publicclassChildextendsBase{

voidtest(){

}

staticpublicvoidmain(String[]a){

ChildanObj=newChild();

BasebaseObj=(Base)anObj;

baseObj.test();

1

)

Selectmostappropriateanswer.

AChild.test()

Base.test()

BBase.test()

Child.tesK)

CBase.test()

DChild.test()

解答:D

測試代碼相當于:BasebaseObj=newChild。;父類的引用指向子類的實例,子類又重寫了父類

的test方法,因此調(diào)用子類的test方法。

4.Whatwillbetheoutputwhenyoucompileandexecutethefollowingprogram,

classBase

(

staticvoidtest(){

)

)

publicclassChildextendsBase{

voidtest()(

Base.testO;//Calltheparentmethod

)

staticpublicvoidmain(String[]a){

newChild().test();

)

Selectmostappropriateanswer.

AChild.test()

Base.test()

BChild.test()

Child.test()

CCompilationerror.Cannotoverrideastaticmethodbyaninstancemethod

DRuntimeerror.Cannotoverrideastaticmethodbyaninstancemethod

解答:C

靜態(tài)方法不能在子類中被重寫

5.Whatwillbetheoutputwhenyoucompileandexecutethefollowingprogram.

publicclassBase{

privatevoidtest(){

)

staticpublicvoidmain(String[Ja){

newBase().test();

)

)

Selectmostappropriateanswer.

A66(Result)

B12(Result)

CRuntimeError.Incompatibletypefor+.Can'tconvertaninttoastring.

DCompilationError.Incompalibletypefor+.Can'taddastringtoanint.

解答:B

字符串與根本數(shù)據(jù)類型鏈接的問題,如果第一個是字符串那么后續(xù)就都按字符串處理,比方上邊例子要

第n個都是根本數(shù)據(jù)第n+1是字符串類型,那么前n個都按加法計算出結(jié)果在與字符串連接

6..Whatwillbetheoutputwhenyoucompileandexecutethefollowingprogram.Thesymbol'

i_i'meansspace.

kpublicclassBase{

2:

3:privatevoidtest(){

4:

5:StringaStr="I_JOnei_iH;

6:StringbStr=aStr;

7:aStr.toUpperCase();

8:aStr.trim();

7:}

8:

9:staticpublicvoidmain(String[]a){

10:newBase().test();

11:1

12:)

Selectmostappropriateanswer.

A[ONE,I_IOnei_j]

B[i_)Onei_i,One]

C[ONE,One]

D[ONE,ONE]

E[i_jOnsLj,i_jOnei_j]

解答:E

通過StringbStr二aStr;這句代碼使bStr和aStr指向同一個地址空間,所以最后aStr和bStr的結(jié)

果應(yīng)該是一樣,String類是定長字符串,調(diào)用一個字符串的方法以后會形成一個新的字符串。

7.下面關(guān)于變量及其范圍的陳述哪些是不正確的():

A.實例變量是類的成員變量

B.實例變量用關(guān)鍵字static聲明

C.在方法中定義的局部變量在該方法被執(zhí)行時創(chuàng)立

D.局部變量在使用前必須被初始化

解答:BC

由static修飾的變量稱為類變量或是靜態(tài)變量

方法加載的時候創(chuàng)立局部變量

8.以下關(guān)于修飾符混用的說法,錯誤的選項是():

A.abstract不能與final并列修飾同一個類

B.abstract類中可以有private的成員

C.abstract方法必須在abstract類中

D.static方法中能處理非static的屬性

解答D

:靜態(tài)方法中不能引用非靜態(tài)的成員

9.執(zhí)行完以下代碼int[]x=newintl25J;后,以下哪項說明是正確的():

A、x[24]為0

B、x[24]未定義

C、x[25]為0

D、x⑼為空

解答:A

x屬于引用類型,該引用類型的每一個成員是int類型,默認值為:0

10.編譯運行以下程序后,關(guān)于輸出結(jié)果的說明正確的選項是():

publicclassConditional{

publicstaticvoidmain(Stringargs[]){

intx=4;

)

)

A^輸出結(jié)果為:valueis99.99

B、輸出結(jié)果為:valueis9

C、輸出結(jié)果為:valueis9.0

D、編譯錯誤

解答:C

三目運算符中:第二個表達式和第三個表達式中如果都為根本數(shù)據(jù)類型,整個表達式的運算結(jié)果

由容量高的決定099.9是double類型而9是int類型,double容量高“

11.關(guān)于以下application的說明,正確的選項是():

1.classStaticStuff

2.(

3.staticintx=10;

4.static{x+=5;}

5.publicstaticvoidmain(Stringargs[])

6.(

8.)

9.static{x/=3;}

10.}

A、4行與9行不能通過編譯,因為缺少方法名和返回類型

B、9行不能通過編譯,因為只能有一個靜態(tài)初始化器

C、編譯通過,執(zhí)行結(jié)果為:x=5

D、編譯通過,執(zhí)行結(jié)果為:x=3

解答:C

自由塊是類加載的時候就會被執(zhí)行到的,自由塊的執(zhí)行順序是按照在類中出現(xiàn)的先后順序執(zhí)行。

12.關(guān)于以下程序代碼的說明正確的選項是():

1.classHasStatic)

2.privatestaticintx=100;

3.publicstaticvoidmain(Stringargs[]){

4.HasStatichsl=newHasStatic();

5.hsl.x++;

6.HasStatichs2=newHasStatic();

7.hs2.x++;

8.hsl=newHasStatic();

9.hsl.x++;

10.HasStatic.x-;

12.)

13.}

A、5行不能通過編譯,因為引用了私有靜態(tài)變量

B、10行不能通過編譯,因為x是私有靜態(tài)變量

C、程序通過編譯,輸出結(jié)果為:x=103

D、程序通過編譯,輸出結(jié)果為:x=IO2

解答:D

靜態(tài)變量是所有對象所共享的,所以上述代碼中的幾個對象操作是同一靜態(tài)變量x,靜態(tài)變量可以通

過類名調(diào)用。

13.以下說法正確的有0

A.class中的constructor不可省略

B.constructor必須與class同名,但方法不能與class同名

C.constructor在一個對象被new時執(zhí)行

D.一個class只能定義一個constructor

解答:C

構(gòu)造方法的作用是在實例化對象的時候給數(shù)據(jù)成員進展初始化

A.類中如果沒有顯示的給出構(gòu)造方法,系統(tǒng)會提供一個無參構(gòu)造方法

B.構(gòu)造方法與類同名,類中可以有和類名一樣的方法

D.構(gòu)造方法可以重載

14.以下哪種說法是正確的0

A.實例方法可直接調(diào)用超類的實例方法

B.實例方法可直接調(diào)用超類的類方法

C.實例方法可直接調(diào)用其他類的實例方法

D.實例方法可直接調(diào)用本類的類方法

解答:D

A.實例方法不可直接調(diào)用超類的私有實例方法

B.實例方法不可直接調(diào)用超類的私有的類方法

C.要看訪問權(quán)限

15.以下哪一種表達是正確的()

A.abstract修飾符可修飾字段、方法和類

B.抽象方法的body局部必須用一對大括號{}包住

C.聲明抽象方法,大括號可有可無

D.聲明抽象方法不可寫出大括號

解答:D

abstract可以修飾方法和類,不能修飾屬性,抽象方法沒有方法體,即沒有大括號”

16.下面代碼的執(zhí)行結(jié)果是?

publicclassShortSct{

publicstaticvoidmain(Stringargs[])

Set<Short>s=newHashSet<Short>();

for(Shorti=0;i<100;i++)

{

s.add(i);

s.remove(i-I);

}

)

)

A.1

B.100

C.ThrowsException

D.NoneoftheAbove

解答:B

i是Short類型i-1是int類型,其包裝類為Integer,所以s.remove(i-l);不能移除Set集合中Short

類型對象。

17.鏈表具有的特點是:(選擇3項)

A、不必事先估計存儲空間

B、可隨機訪問任一元素

C、插入刪除不需要移動元素

D、所需空間與線性表長度成正比

解答:ACD

A.采用動態(tài)存儲分配,不會造成內(nèi)存浪費和溢出。

B.不能隨機訪問,查找時要從頭指針開場遍歷

C.插入、刪除時,只要找到對應(yīng)前驅(qū)結(jié)點,修改指針即可,無需移動元素

D.需要用額外空間存儲線性表的關(guān)系,存儲密度小

IS.Java語言中,String類的IndexOf。方法返回的類型是?

A、Intl6B、Int32C、intD>long

解答:C

indcxOf方法的聲明為:publicintindcxOf(intch)

在此對象表示的字符序列中第一次出現(xiàn)該字符的索引;如果未出現(xiàn)該字符,那么返回

19.以下關(guān)于面向?qū)ο蟾拍畹拿枋鲋?,不正確的一項為哪一項0o(選擇1項)

A.在現(xiàn)實生活中,對象是指客觀世界的實體

B.程序中的對象就是現(xiàn)實生活中的對象

C.在程序中,對象是通過一種抽象數(shù)據(jù)類型來描述的,這種抽象數(shù)據(jù)類型稱為類(class)

D.在程序中,對象是一組變量和相關(guān)方法的集合

解答:B

20..執(zhí)行以下代碼后,哪個結(jié)論是正確的String[]s=newString[10];

A.s[9]為null;

B.s[10]為

C.s[0]為未定義

D.s.Iength為10

解答:AD

s是引用類型,s中的每一個成員都是引用類型,即String類型,String類型默認的值為null

s數(shù)組的長度為10。

21.屬性的可見性有。(選擇3項)

A.公有的

B.私有的

C.私有保護的

D.保護的

解答:ABD

屬性的可見性有四種:公有的(public)保護的(protected)默認的私有的(private)

22..在字符串前面加上符號,那么字符串中的轉(zhuǎn)義字符將不被處理。(選擇1項)

A@

B\

C#

D%

解答:B

23.以下代碼哪行會出錯:(選擇1項)

1)publicvoidmodifyO(

2)intI,j,k;

3)1=100;

4)while(I>0){

5)j=I*2;

7)k=k+1;

8)I-;

9)}

10))

A.4

B.6

C.7

D.8

解答:C

k沒有初始化就使用了

24.對記錄序列{314,298,508,123,486,145}按從小到大的順序進展插入排序,經(jīng)過兩趟排序后的

結(jié)果為:(選擇1項)

A{314,298,508,123,145,486)

B{298,314,508,123,486,145)

C{298,123,314,508,486,145)

D{123、298,314,508,486,145(

解答:B

插入排序算法:

publicstaticvoidinjectionSort(int[]number){

//第一個元素作為一局部,對后面的局部進展循環(huán)

for(intj=1;j<number.length;j++){

inttmp=number[j];

inti=j-1;

while(tmp<number[i]){

number[i+1]=number[i];

i-;

if(i==-1)

break;

)

numberfi+1]=tmp;

25.棧是一種。(選擇1項)

A存取受限的線性構(gòu)造

B存取不受限的線性構(gòu)造

C存取受限的非線性構(gòu)造

D存取不受限的非線性構(gòu)造

解答:A

棧(stack)在計算機科學中是限定僅在表尾進展插入或刪除操作的線性表。

26.以下哪些語句關(guān)于內(nèi)存回收的說明是正確的。(選擇1項)

A程序員必須創(chuàng)立一個線程來釋放內(nèi)存

B內(nèi)存回收程序負責釋放無用內(nèi)存

C內(nèi)存回收程序允許程序員直接釋放內(nèi)存

D內(nèi)存回收程序可以在指定的時間釋放內(nèi)存對象

解答:B

垃圾收集器在一個Java程序中的執(zhí)行是自動的,不能強制執(zhí)行,即使程序員能明確地判斷出有一塊內(nèi)

存已經(jīng)無用了,是應(yīng)該回收的,程序員也不能強制垃圾收集器回收該內(nèi)存塊。程序員唯一能做的

就是通過調(diào)用System,gc方法來”建議”執(zhí)行垃圾收集器,但其是否可以執(zhí)行,什么時候執(zhí)行卻

都是不可知的。

A.voidrun()

B.publicvoidrun()

C.publicvoidstart()

D.voidrun(intpriority)

E.publicvoidrun(intpriority)

F.publicvoidstart(intpriority)

解答:B

實現(xiàn)Runnable接口,接口中有一個抽象方法run,實現(xiàn)類中實現(xiàn)該方法。

28Given:

publicstaticvoidmain(String[]args){

Objectobj=newObjcctO(

publicinthashCode(){

return42;

};

Whatistheresult?

A.42

B.Anexcsptionisthrownatruntime.

C.Compilationfailsbecauseofanerroronline12.

D.Compilationfailsbecauseofanerroronline16.

E.Compilationfailsbecauseofanerroronline17.

解答:A

匿名內(nèi)部類覆蓋hashCode方法。

29WhichtwoarereservedwordsintheJavaprogramminglanguage?(Choosetwo;

A.run

B.import

C.default

D.implements

解答:BD

import導入包的保存字,implements實現(xiàn)接口的保存字。

30.WhichtwostatementsaretrueregardingthereturnvaluesofpropertywrittenhashCodeand

equalsmethodsfromtwoinstancesofthesameclass?(Choosetwo)

A.IfthehashCodevaluesaredifferent,theobjectsmightbeequal.

B.IfthehashCodevaluesarethesame,theobjectmustbeequal.

C.IfthehashCodevaluesarethesame,theobjectsmightbeequal.

D.IfthehashCodevaluesaredifferent,theobjectsmustbeunequal.

解答:CD

先通過hashcode來判斷某個對象是否存放某個桶里,但這個桶里可能有很多對象,那么我們就需要再

通過equals來在這個桶里找到我們要的對象。

31.Whatisthenumericalrangeofachar?

A.0...32767

B.0...65535

C.-256...255

D.-32768...32767

E.Rangeisplatformdependent.

解答:B

在Java中,char是一個無符號16位類型,取值范圍為0到65535。

32.Given:

publicclassTest(

privatestaticfloat[]f=newfloat[2];

publicstaticvoidmain(Stringargs[]){

)

)

Whatistheresult?

A.f[0]=0

B.f[0]=0.0

C.Compilationfails.

D.Anexceptionisthrownatruntime.

解答:B

33.Given:

publicclassTest)

publicstaticvoidmain(String[Jargs){

Stringstr=NULL;

)

1

Whatistheresult?

A.NULL

B.Compilationfails.

C.Thecoderunswithnooutput.

D.Anexceptionisthrownatruntime.

解答:B

null應(yīng)該小寫

34、Exhibit:

1.publicclassXimplementsRunnable{

2.privateintx;

3.privateinty;

4.publicstaticvoidmain(String[]args){

5.Xthat=newX();

6.(newThread(that)).start();

7.(newThread(that)).start();

8.I

9.publicsynchronizedvoidrun(){

10.for(;;){

11.x++;

12.y++;

14.)

15.}

16.)

Whatistheresult?

A.Anerroratline11causescompilationtofail.

B.Errorsatlines7and8causecompilationtofail.

C.Theprogramprintspairsofvaluesforxandythatmightnotalwaysbethesameonthe

sameline(fbrexample,"x=2,y=l")

D.Theprogramprintspairsofvaluesforxandythatarealwaysthesameonthesameline

(fbrexample,t4x=l,y=l”.Inaddition,eachvalueappearstwice(fbrexample,Mx=1,

y=l"followedby"x=1,y=1")

E.Theprogramprintspairsofvaluesforxandythatarealwaysthesameonthesameline

(fbrexample,4<x=l,y=l”.Inaddition,eachvalueappearstwice(fbrexample,"x=l,

y-lvfollowedby"x=2,y=2")

解答:E

多線程共享一樣的數(shù)據(jù),使用synchronized實現(xiàn)數(shù)據(jù)同步。

35、WhichtwoCANNOTdirectlycauseathreadtostopexecuting?(ChooseTwo)

A.Existingfromasynchronizedblock.

B.Callingthewaitmethodonanobject.

C.Callingnotifymethodonanobject.

D.CallingreadmethodonanInputStreamobject.

E.CallingtheSetPrioritymethodonaThreadobject.

解答:AD

stop方法.這個方法將終止所有未完畢的方法,包括run方法。當一個線程停頓時候,他會立即釋

放所有他鎖住對象上的鎖。這會導致對象處于不一致的狀態(tài)。當線程想終止另一個線程的時

候,它無法知道何時調(diào)用stop是平安的,何時會導致對象被破壞。所以這個方法被棄用了。你

應(yīng)

該中斷一個線程而不是停頓他。被中斷的線程會在平安的時候停頓。

36、Whichtwostatementsaretrueregardingthecreationofadefaultconstructor?(Choose

Two)

A.Thedefaultconstructorinitializesmethodvariables.

B.Thedefaultconstructorinvokestheno-parameterconstructorofthesuperclass.

C.Thedefaultconstructorinitializestheinstancevariablesdeclaredintheclass.

D.Ifaclasslacksano-parameterconstructor,,buthasotherconstructors,thecompiler

createsadefaultconstructor.

E.Thecompilercreatesadefaultconstructoronlywhentherearenootherconstructorsibr

theclass.

解答:CE

構(gòu)造方法的作用是實例化對象的時候給數(shù)據(jù)成員初始化,如果類中沒有顯示的提供構(gòu)造方法,系統(tǒng)會提

供默認的無參構(gòu)造方法,如果有了其它構(gòu)造方法,默認的構(gòu)造方法不再提供。

37、Given:

publicclassOuterClass{

privatedoubledl=1.0;

//insertcodehere

(

Youneedtoinsertaninnerclassdeclarationatline2.Whichtwoinnerclassdeclarations

arevalid?(ChooseTwo)

A.staticclassInnerOne{publicdoublemethoda(){returndl;}}

B.staticclassInnerOne{staticdoublemethoda(){returndl;}}

C.privateclassInnerOne{publicdoublemethoda(){returndl;})

D.protectedclassInnerOne{staticdoublemethoda(){returndl;)}

E.publicabstractclassInnerOne{publicabstractdoublemethoda();}

解答:CE

AB.內(nèi)部類可以聲明為static的,但此時就不能再使用外層封裝類的非static的成員變量;

D.非static的內(nèi)部類中的成員不能聲明為static的,只有在頂層類或static的內(nèi)部類中

才可聲明static成員

38、Whichtwodeclarationspreventtheoverridingofamethod?(ChooseTwo)

A.finalvoidmethoda(){)

B.voidfinalmethoda()(}

C.staticvoidmethoda(){)

D.staticfinalvoidmethoda(){}

E.finalabstractvoidmethoda(){}

解答:AD

final修飾方法,在子類中不能被重寫。

39>Given:

publicclassTest{

publicstaticvoidmain(Stringargs[]){

classFoo{

publicinti=3;

)

Objecto=(Object)newFoo();

Foofoo=(Foo)o;

Whatistheresult?

A.Compilationwillfail.

B.Compilationwillsucceedandtheprogramwillprint"3”

C.CompilationwillsucceedbuttheprogramwillthrowaClassCastExccptionatline6.

D.CompilationwillsucceedbuttheprogramwillthrowaClassCastExceptionatline7.

解答:B

局部內(nèi)部類的使用

40>Given:

publicclassTest)

publicstaticvoidmain(String[]args){

Stringfoo="blue";

Stringbar=foo;

fbo="green”;

)

1

Whatistheresult?

A.Anexceptionisthrown.

B.Thecodewillnotcompile.

C.Theprogramprints"null"

D.Theprogramprints"blue"

E.Theprogramprints“green”

解答:D

采用Stringfoo=Ublue,z定義方式定義的字符串放在字符串池中,通過Stringbar=foo;

他們指向了同一地址空間,就是同一個池子,當執(zhí)行foo="green";foo指向新的地址空間。

41、Whichcodedeterminestheintvaluefooclosesttoadoublevaluebar?

A.intfoo=(int)Math.max(bar);

B.intfoo=(int)Math.min(bar);

C.intfoo=(int)Maih.abs(bar);

D.intfoo=(int)Math.ceil(bar);

E.intfoo=(int)Math.floor(bar);

F.intfoo=(int)Math.round(bar);

解答:DEF

AB兩個選項方法是用錯誤,都是兩個參數(shù)。

abs方法是取bar的絕對值,

ceil方法返回最小的(最接近負無窮大)double值,該值大于等于參數(shù),并等于某個整數(shù)。

floor方法返回最大的(最接近正無窮大)double值,該值小于等于參數(shù),并等于某個整數(shù)。

round方法返回最接近參數(shù)的long。

42、Exhibit:

1.packagefoo;

3.privateclassMyVectorextendsVector{

4.inti=1:

5.publicMyVector(){

6.i=2;

7.)

&)

9.publicclassMyNewVectorextendsMyVector{

lO.publicMyNewVector(){

ll.i=4;

12.)

13.publicstaticvoidmain(Stringargs[]){

14.MyVectorv=newMyNewVector();

15.)

16.)

ThefileMyNewVector.javaisshownintheexhibit.Whatistheresult?

A.Compilationwillsucceed.

B.Compilationwillfailatline3.

C.Compilationwillfailatline6.

D.Compilationwillfailatline9.

E.Compilationwillfailatline14.

解答:B

類MyVector不能是私有的

43、Given:

publicclassTest{

publicstaticvoidmain(String[]args){

Stringfoo=args[1];

Stringbar=args[2];

Stringbaz=args[3];

)

Andtheoutput:

Baz=2

Whichcommandlineinvocationwillproducetheoutput?

A.javaTest2222

B.javaTest1234

C.javaTest4242

D.javaTest4321

解答:C

數(shù)組下標從0開場

44、Given:

1.publicinterfaceFoo{

2.intk=4;

3.)

Whichthreeareequivalenttoline2?(ChooseThree)

A.finalintk=4;

B.Publicintk=4;

C.staticintk=4;

D.Privateintk=4;

E.Abstractintk=4;

F.Volatileintk=4;

G.Transientintk=4;

H.protectedintk=4;

解答:BDE

static:修飾的靜態(tài)變量

final修飾的是常量

abstract不能修飾變量

Volatile修飾的成員變量在每次被線程訪問時,都強迫從共享內(nèi)存中重讀該成員變量的值。

而且,當成員變量發(fā)生變化時,強迫線程招變化值回寫到共享內(nèi)存。這樣在任何時刻,

兩個不同的線程總是看到某個成員變量的同一個值。

Transient:對不需序列化的類的域使用transient關(guān)鍵字,以減少序列化的數(shù)據(jù)量。

intk=4相當于publicstaticfinalintk=4;在接口中可以不寫staticfinal

45、Given:

publicclassfbo{

staticStrings;

publicstaticvoidmain(String[]args){

Whatistheresult?

A.Thecodecompilesand"s="isprinted.

B.Thecodecompilesandisprinted.

C.Thecodedoesnotcompilebecausestringsisnotinitialized.

D.Thecodedoesnotcompilebecausestringscannotbereferenced.

E.Thecodecompiles,butaNullPointerExceptionisthrownwhentoStringiscalled.

解答:B

String為禁用數(shù)據(jù)類型,引用類型數(shù)據(jù)成員的默認值為null

46Whichtwocreateaninstanceofanarray?(ChooseTwo)

A.int[]ia=newint[15];

B.floatfa=newfloat[20];

C.char[]ca="SomeString";

D.Objectoa=newfloat[20];

E.IntiaIJ[]=(4,5,6)(1,2,3)

解答:AD

任何類的父類都是Object,數(shù)組也數(shù)據(jù)引用類型,Objecloa=newfloat[20];這種寫法相當于父類

的用指向之類的實例。

47>Given:

publicclassExceptionTest)

classTestExceptionextendsException(}

publicvoidrunTest()throwsTestException{]

publicvoidtest()/*PointX*/{

runTest();

)

AtpointXonline4,whichcodecanbeaddedtomakethecodecompile?

A.throwsException

B.Catch(Exceptione).

C.ThrowsRuntimeException.

D.Catch(TestExceptione).

E.Nocodsisnecessary.

解答:A

方法上使用throws拋出異常,Exception是異常類的超類。

48、Exhibit:

publicclassSwitchTest{

publicstaUcvoidmain(String[]args){

)

publicstaticintswitchlt(intx){

intj=1;

switch(x){

casel:j++;

case2:j++;

case3:j++;

case4:j++;

case5:j++;

default:j++;

)

returnj+x;

)

)

Whatisll)coutputGoinline3?

A.Value=3

B.Value=4

C.Value=5

D.Value=6

E.Value=7

F.Value=8

解答:F

由于case塊沒有break語句,那么從case4:向下的代碼都會執(zhí)行。

49、Whichfourtypesofobjectscanbethrownusingthethrowstatement?(ChooseFour)

A.Error

B.Event

C.Object

D.Exception

E.Throwable

F.RuntimeException

解答:ADEF

能夠拋出的對象類型要是Throwable或是Throwable的子類

50.在下面程序的第6行補充上以下哪個方法,會導致在編譯過程中發(fā)生錯誤?

1)classSuper{

2)publicfloatgetNum(){

3)return3.0f;

4)1

)

5)pubhcclassSubextendsSuper)

6)

7)I

A,publicfloatgetNum(){retun4.0f;}

B.publicvoidgetNum(){)

C.publicvoidgetNum(doubled){}

D.publicdoublegetNum(floatd){retun4.0f;)

解答:B

方法重寫的問題。子類中有和父類的方法多一樣,但是參數(shù)不同,不會出編譯借誤,認為是子類

的特有的方法,但是如果子類中方法和父類的方法名,參數(shù),訪問權(quán)限,異常都一樣,只有返回值

類型不同會編譯不通過。

51.下面關(guān)于import,class和package的聲明順序哪個正確?()

A.package,import,class

B.class,import,package

C.import,package,class

D.package,class,import

解答:A

52.下面哪個是正確的?()

A.Stringtemp[]=newString{"a""b""c");

B.Stringtemp[]={"a""b",'c")

C.Stringtemp={"a","b",nc"}

D.Stringtemp[]={"a","b","c"|

解答:D

A.String類是final類故不可以繼承;

B.String類是final類故可以繼承;

C.String類不是final類故不可以繼承;

D.String類不是final類故可以繼承;

解答:A

String類是final的,在java中final修飾類的不能被繼承

54.關(guān)于實例方法和類方法,以下描述正確的選項是:()

A.實例方法只能訪問實例變量

B.類方法既可以訪問類變量,也可以訪問實例變量

C.類方法只能通過類名來調(diào)用

D.實例方法只能通過對象來調(diào)用

解答:D

A實例方法可以訪問類變量

B類方法只能訪問類變量

C類方法可以通過對象調(diào)用

55.接口是Java面向?qū)ο蟮膶崿F(xiàn)機制之一,以下說法正確的選項是:()

A.Java支持多重繼承,一個類可以實現(xiàn)多個接口;

B.Java只支持單重繼承,一個類可以實現(xiàn)多個接口;

C.Java只支持單重繼承,一個類只可以實現(xiàn)一個接口;

D.Java支持多重繼承,但一個類只可以實現(xiàn)一個接口。

解答:B

Java支持單重繼承,一個類只能繼承自另外的一個類,但是一個類可以實現(xiàn)多個接口。

56.以下關(guān)于interface的說法正確的選項是:()

A.interface中可以有private方法

B.interface中可以有final方法

C.interface中可以有function實現(xiàn)

D.interface可以繼承其他interface

解答:D

A.接口中不可以有private的方法

B.接口中不可以有final的方法接口中的方法默認是publicabstract的

C.接口中的方法不可以有實現(xiàn)

57.A類被打包在packageA,B類被打包在packageB,且B類被聲明為public,且有一個

成員變量x被聲明為,protected控制方式。C類也位于packageA包,且繼承了B類。那么以

下說話正確的選項是()

A.A類的實例不能訪問到B類的實例

B.A類的實例能夠訪問到B類一個實例的x成員

C.C類的實例可以訪問到B類一個實例的x成員

D.C類的實例不能訪問到B類的實例

解答:C

不同包子類的關(guān)系,可以訪問到父類B的protected成員

58.以下程序正確的輸出是()

packagetest;

publicclassEatherClass{

publicFatherClass(){

I

)

packagetest;

importtest.FatherClass;

publicclassChildClassextendsFatherClass{

publicChildClassO{

publicstaticvoidmain(String[]args){

FatherClassfc=newFatherClass();

ChildClasscc=newChildClass();

)

A.

FatherClassCreate

FatherClassCreate

ChildClassCreate

B.

FatherClassCreate

ChildClassCreate

FatherClassCreate

C.

ChildClassCreate

ChildClassCreate

FatherClassCreate

D.

ChildClassCreate

FatherClassCreate

FatherClassCreate

解答:A

在子類構(gòu)造方法的開場默認情況下有一句super。;來調(diào)用父類的構(gòu)造方法

59.給定如下代碼,下面哪個可以作為該類的構(gòu)造函數(shù)()

publicclassTest{

A.publicvoidTest(){,,}

B.publicTest(){?}

C.publicstaticTest(){?}

D.publicstaticvoidTest(){,,}

解答:B

構(gòu)造方法:與類同名沒有放回類型

60.題目:

1.publicclasstest(

2.publicstaticvoidmain(Stringargs[]){

3.inti=OxFFFFFFFl;

4.intj=-i;

5.

6.}

7.)

程序運行到第5行時J的值為多少?()

A.-15

B.O

C.1

D.14

E.在第三行的錯誤導致編譯失敗

解答:D

inti=OxFFFFFFFl湘當于inti=?15然后對i進展取反即取絕對值再減一

61.關(guān)于sleep。和wait(),以下描述錯誤的一項為哪一項()

A.sleep是線程類(Thread)的方法,wait是Object類的方法;

B.sleep不釋放對象鎖,wait放棄對象鎖;

C.sleep暫停線程、但監(jiān)控狀態(tài)仍然保持,完畢后會自動恢復;

D.wait后進入等待鎖定池,只有針對此對象發(fā)出notify方法后獲得對象鎖注入運行狀態(tài)。

解答:D

sleep是線程類(Thread)的方法,導致此線程暫停執(zhí)行指定時間,給執(zhí)行時機給其他線程,但是監(jiān)控

狀態(tài)依然保持,到時后會自動恢復。調(diào)用sleep不會釋放對象鎖。

wait是Object類的方法,對此對象調(diào)用wait方法導致本線程放棄對象鎖,進入等待此對象的等待鎖

定池,只有針對此對象發(fā)出notify方法〔或notifyAll)后本線程才進入對象鎖定池準備獲得對

象鎖進入運行狀態(tài)。

62.下面能讓線程停頓執(zhí)行的有(多項選擇)()

A.sleep();

B.stop();

C.notifyO;

D.synchronized();

E.yield();

F.wait();

G.notifyAll();

解答:ABDEF

sleep:導致此線程暫停執(zhí)行指定時間

stop:這個方法將終止所有未完畢的方法,包括run方法。

synchronized。:對象鎖

yield:當前正在被效勞的線程可能覺得cpu的效勞質(zhì)量不夠好,于是提前退出,這就是yieldo

wait:當前正在被效勞的線程需要睡一會,醒來后繼續(xù)被效勞

63.下面哪個可以改變?nèi)萜鞯牟季郑?)

A.setLayout(aLayoutManager);

B.addLayout(aLayoutManager);

C.layout(aLayoutManager);

D.setLayoutManager(aLayoutManager);

解答:A

Java設(shè)置布局管理器setLayout()

64.下面哪個是applet傳遞參數(shù)的正確方式?(

A.<appletcode=Test.classage=33width=100height=100>

B.<paramname=agevaluc=33>

C.<appletcode=Test.classname=agevalue=33width=100height=100>

D.<applctTest33>

解答:B

65.提供Java存取數(shù)據(jù)庫能力的包是0

A.java.sql

B.java.awt

C.java.lang

D.java.swing

解答:A

java.sql是JDBC的編程接口

java.awt和java.swing是做圖像界面的類庫

java.lang:Java編程語言進展程序設(shè)計的根底類

66.不能用來修飾interface的有()

A.private

B.public

C.protected

D.static

解答:ACD

修飾接口可以是public和默認

67.以下說法錯誤的有0

A.在類方法中可用this來調(diào)用本類的類方法

B.在類方法中調(diào)用本類的類方法時可直接調(diào)用

C.在類方法中只能調(diào)用本類中的類方法

D.在類方法中絕對不能調(diào)用實例方法

解答:ACD

A.在類方法中不能使用this關(guān)鍵字

C.在類方法中可以調(diào)用其它類中的類方法

D.在類方法中可以通過實例化對象調(diào)用實例方法

68.從下面四段(A,B,C,D)代碼中選擇出正確的代碼段0

A.abstractclassName{

privateStringname;

publicabstractbooleanisStupidNamc(Stringname){}

)

B.publicclassSomething{

voiddoSomcthing(){

privateStrings=

int1=s.length();

)

)

C.publicclassSomething{

publicstaticvoidmain(String[]args){

Othero=newOther();

newSomething().addOne(o);

I

publicvoidaddOne(finalOthero){

o.i++;

)

)

classOther{

publicinti;

)

D.publicclassSomething{

publicintaddOne(finalintx){

return++x;)

)

解答:C

A..抽象方法不能有方法體

B.方法中定義的是局部變量,不能用類成員變量修飾符private

D.final修飾為常量,常量的值不能被改變

69.選擇下面代碼的運行結(jié)果:()o

publicclassTest{

publicvoidmethod()

(

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

{

}

)

)

A.0122

B.0123

C.編譯錯誤

D.沒有任何輸出

解答:C

i變量的作用范圍是整個for循環(huán)

70.請看如下代碼

classPerson{

privateinta;

publicintchange(intm)(returnm;}

1

publicclassTeacherextendsPerson{

publicintb;

publicstaticvoidmain(Stringargf]){

Personp=newPerson();

Teachert=newTeacher();

inti;

//pointx

)

I

下面哪些放在〃pointx?行是正確的?

A,i=m;

B,i=b;

C,i=p.a;

D,i=p.change(30);

E,i=t.b;

解答:DE

A.不同的作用域

B.靜態(tài)方法中不能直接使用非靜態(tài)成員變量

C.類外不能訪問其它類私有的成員

D,E.在類方法中可以通過實例化對象調(diào)用類中的實例成員。

71下面那幾個函數(shù)是publicvoidmethod。{…}的重載函數(shù)?()

A.publicvoidmethod(intm){…}

B.publicintmethod(){...}

C.publicvoidmethod2(){...}

D.publicintmethod(intm,floatf){...)

解答:A

重載:方法名一樣,參數(shù)列表不同

72.給出如下聲明:

Strings="Example”;

合法的代碼由哪些?

A)s?>=3B)s[3]="X"C)inti=s.iength()D)s=s+10

解答:D

A.移位運算,要是整數(shù)類型。

B.s不是數(shù)組

C.String類取長度的方法為:length。

D.字符串相加

73.如下哪些不是java的關(guān)鍵字?()

A.const

B.NULL

C.false

D.t

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論