計算機開放本科_第1頁
計算機開放本科_第2頁
計算機開放本科_第3頁
計算機開放本科_第4頁
計算機開放本科_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

計算機開放本科

《Java語言與WWW技術(shù)》自檢自測題

一、一、判斷題

1.Java程序里,創(chuàng)建新的類對象用關(guān)鍵字new,回收無用的類對象使用

關(guān)鍵字free。

2.對象可以賦值,只要使用賦值號(等號)即可,相當(dāng)于生成了

一個各屬性與賦值對象相同的新對象。

3.有的類定義時可以不定義構(gòu)造函數(shù),所以構(gòu)造函數(shù)不是必需的。

4.類及其屬性、方法可以同時有一個以上的修飾符來修飾。

5.Java的屏幕坐標是以像素為單位,容器的左下角被確定為坐標的起

6.抽象方法必須在抽象類中,所以抽象類中的方法都必須是抽象方

法。

7.Final類中的屬性和方法都必須被final修飾符修飾。

8.最終類不能派生子類,最終方法不能被覆蓋。

9.子類要調(diào)用父類的方法,必須使用super關(guān)鍵字。

10.一個Java類可以有多個父類。

11.如果p是父類Parent的對象,而c是子類Child的對象,則語句c=

p是正確的。

12.一個類如果實現(xiàn)了某個接口,那么它必須重載該接口中的所有方法。

13.當(dāng)一個方法在運行過程中產(chǎn)生一個異常,則這個方法會終止,但是

整個程序不一定終止運行。

14.接口是特殊的類,所以接U也可以繼承,子接口將繼承父接口的所

有常量和抽象方法。

15.用“+”可以實現(xiàn)字符串的拼接,用-可以從一個字符串中去除一

個字符子串。

16.使用方法length()可以獲得字符串或數(shù)組的長度。

17.設(shè)String對象s="Hello”,運行語句

System.out.println(s.concat(uWorld!"));JsString對象s的內(nèi)容為"Hello

world!”,所以語句輸出為

Helloworld!

18.創(chuàng)建Vector對象時構(gòu)造函數(shù)給定的是其中可以包容的元素個數(shù),

使用中應(yīng)注意不能超越這個數(shù)值。

19.所有的鼠標事件都由MouseListener監(jiān)聽接口的監(jiān)聽者來處理。

20.一個容器中可以混合使用多種布局策略。

21.Java中,并非每個事件類都只對應(yīng)一個事件。

22.一個線程對象的具體操作是由run()方法的內(nèi)容確定的,但是Thread

類的run()方法是空的,其中沒有內(nèi)容;所以用戶程序要么派生一個Thread的

子類并在子類里重新定義run()方法,要么使一個類實現(xiàn)Runnable接口并書寫

其中run()方法的方法體。

23.Java的源代碼中定義兒個類,編譯結(jié)果就生成幾個以.class為后綴

的字節(jié)碼文件。

24.JavaApplet是由獨立的解釋器程序來運行的。

25.JavaApplet只能在圖形界面下工作。

26.Java的字符類型采用的是ASCH編碼。

27.Java的各種數(shù)據(jù)類型占用固定長度,與具體的軟硬件平臺環(huán)境無關(guān)

28.Applet是一種特殊的Panel,它是JavaApplet程序的最外層容器。

29.子類的域和方法的數(shù)目一定大于等于父類的域和方法的數(shù)目。

30.System類不能實例化,即不能創(chuàng)建System類的對象。

31.用戶自定義的圖形界面元素也可以響應(yīng)用戶的動作,具有交互功能

32.Java中數(shù)組的元素可以是簡單數(shù)據(jù)類型的量,也可以是某一類的對

象。

33.Vector類中的對象不能是簡單數(shù)據(jù)類型。

34.Java中的String類的對象既可以是字符串常量,也可以是字符串變

量。

35.容器是用來組織其他界面成分和元素的單元,它不能嵌套其他容器。

二、二、選擇題

1、關(guān)于被私有保護訪問控制符privateprotected修飾的成員變量,以卜一說

法正確的是()

A.A.可以被三種類所引用:該類自身、與它在同一個包中的其他類、

在其他包中的該類的子類

B.B.可以被兩種類訪問和引用:該類本身、該類的所有子類

C.C.只能被該類自身所訪問和修改

D.D.只能被同一個包中的類訪問

2、關(guān)于被私有訪問控制符private修飾的成員變量,以下說法正確的是

()

A.可以被三種類所引用:該類自身、與它在同一個包中的其他類、在其他

包中的該類的子類

B.可以被兩種類訪問和引用:該類本身、該類的所有子類

C.只能被該類自身所訪問和修改

D.只能被同一個包中的類訪問

3、關(guān)于被保護訪問控制符protected修飾的成員變量,以下說法正確的是

()

A.可以被三種類所引用:該類自身、與它在同一個包中的其他類、在其他

包中的該類的子類

B.可以被兩種類訪問和引用:該類本身、該類的所有子類

C.只能被該類自身所訪問和修改

D.只能被同一個包中的類訪問

4、下列關(guān)于修飾符混用的說法,錯誤的是()

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

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

C.C.abstract方法必須在abstract類中

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

5、容器Panel和Applet缺省使用的布局編輯策略是()

A、BorderLayoutB、FlowLayoutC、GridLayoutD、CardLayout

6、以下標識符中哪項是不合法的()

A、A^BigMeaninglessNameB、$int

C、1stD、$1

7^main方法是JavaApplication程序執(zhí)行的入口點,關(guān)于main方法的方

法頭以下哪項是合法的()

A、A、publicstaticvoidmain()B、publicstaticvoidmain

(String[]args)

C、publicstaticintmain(String[]arg)D、publicvoidmain(String

arg[])

8、執(zhí)行完以下代碼int[]x=newint[25];后,以下哪項說明是正確的

()

A、x[24]為0B、x[24]未定義C、x[25]為0D、x[0]為空

9、以下代碼段執(zhí)行后的輸出結(jié)果為)

intx=3;inty=10;

System.out.println(y%x);

A、0B、1C、2

D、3

10、以下哪個表達式是不合法的()

A、Stringx=''Heno";inty=9;x+=y;

B、Stringx=,,Hello,\inty=9;if(x==y){}

C、Stringx="Hello”;inty=9;x=x+y;

D、Stringx=null;inty=(x!=null)&&(x.length()>0)?x.length:0

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

publicclassConditional(

publicstaticvoidmain(Stringargs[]){

intx=4;

System.out.printlnC'valueis”+((x>4)?99.9:9));

A、輸出結(jié)果為:valueis99.99B、輸出結(jié)果為:valueis9

C、輸出結(jié)果為:valueis9.0D、編譯錯誤

12、以下聲明合法的是()

A、defaultStrings;B、publicfinalstaticnativeint

w()

C>abstractdoubled;D、abstractfinaldouble

hyperbolicCosine()

13、關(guān)于以下application的說明,正確的是()

1.classStaticStuff

2.(

3.3.staticintx=10;

4.4.static{x+=5;}

5.5.publicstaticvoidmain(Stringargs[])

6.6.(

7.7.System.out.println(<<x=,+x);

8.8.)

9.9.static{x/=3;}

10.10.}

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

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

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

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

14、關(guān)于以下程序代碼的說明正確的是()

1.1.classHasStatic{

2.2.privatestaticintx=100;

3.3.publicstaticvoidmain(Stringargs[]){

4.4.HasStatichsl=newHasStatic();

5.5.hsl.x++;

6.6.HasStatichs2=newHasStatic();

7.7.hs2.x++;

8.8.hsl=newHasStatic();

9.9.hsl.x++;

10.10.HasStatic.x-

11.11.System.out.println(44x=,,+x);

12.12.}

13.13.}

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

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

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

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

15、以下選項中循環(huán)結(jié)構(gòu)合法的是()

A、A、while(inti<7)

{i++;

System.out.prinlln(t4iis"+i);

B、B、intj=3;

while(j)

{System.out.println(ujis".);

C、C、intj=0;

for(intk=0;j+k!=10;j++,k++)

{System.out.printlnC4jis"+j+"kis”+k);

)

D、D、intj=0;

do{

System.out.println(4tjis"+j++);

if(j==3){continueloop;}

}while(j<10);

16、類Testi定義如下:

1.publicclassTesti{

2.publicfloataMethod(floata,floatb){

3.

4.)

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

A、publicfloataMethod(floata,floatb,floatc)

B、B、publicfloataMethod(floatc,floatd){}

C、C^publicintaMethod(inta,intb){}

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

17、類Testi、Test2定義如下:

1.publicclassTest!

2.{publicfloataMethod(floata,floatb)throws

3.lOException{}

4.4.)

5.5.publicclassTest2extendsTesti{

6.

7.}

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

A、A、floataMethod(floata,floatb){}

B、B、publicintaMethod(inta,intb)throwsException{)

C、C、publicfloataMethod(floatp,floatq){}

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

18、關(guān)于以下程序段,正確的說法是()

1.Stringsl=''abc"+''der';

2.2.Strings2=newString(si);

3.3.if(sl==s2)

4.4.System.out.println(u==succeeded");

5.5.if(s1.equals(s2))

6.6.System.out.printlnC'.equalsOsucceeded^^);

A、行4與行6都將執(zhí)行B、行4執(zhí)行,行6不執(zhí)行

C、行6執(zhí)行,行4不執(zhí)行C、行4、行6都不執(zhí)行

19、以下說法哪項是正確的()

1.classMyListener

2.extendsMouseAdapterimplementsMouseListener{

3.3.publicvoidmouseEntered(MouseEventmev)

4.4.{System.out.println(HMouseentered.");}

5.5.

A、A、以上代碼可通過編譯

B、B、不能通過編譯,因為沒有實現(xiàn)MouseListener接口中的所有方法

C、C、不能通過編譯,因為類頭定義不能分行

D、D、能通過編譯,若組件用該類作為Mouse的監(jiān)聽者并且接收了

mouse-exited事件,則在執(zhí)行過程中會拋出異常

20、關(guān)于以下程序段的說法,正確的是()

1.classMyListenerimplements

2.2.ActionListener,ItemListener{

3.3.publicvoidactionPerformed(ActionEventae){

4.4.System.out.println("Action0);}

5.5.publicvoiditemStateChanged(ItemEventie){

6.6.System.out.println(,'Itemn);

7.7.)

8.)

A、A、可通過編譯

B、B、第2行產(chǎn)生編譯錯誤

C、C、第3行產(chǎn)生編譯錯誤

D、D、第5行產(chǎn)生編譯錯誤

21、通過調(diào)用newList(10.false)創(chuàng)建一個列表,關(guān)于該列表的兒個說

法哪項是錯誤的。()

A、該列表不支持復(fù)選B、該列表有10個選項

C、根據(jù)需要該列表可能有垂直滾動條D、該列表支持10個可見選項

22、以下哪項可能包含菜單條()

A、PanelB、FrameC、AppletD、Dialog

23、以下代碼完成畫線功能,指出所畫線的顏色()

1.g.setColor(Color.red.green.yello.cyan);

2.g.drawLine(O,0,100,100);

A、redB、greenC、yelloD、cyan

24、關(guān)于以下代碼所畫圖形的說明,正確的是()

1.g.setColor(Color.black);

2.g.drawLine(10,10,l0,50);

3.g.setColor(Color.red);

4.g.drawRect(100,100,150,150);

A、A、-條40像素長的垂直紅線,一個邊長為150像素的紅色四方形

B、B、一條40像素長的垂直黑線,一個邊長為150像素的紅色四方形

C、C、-條50像素長的垂直黑線,一個邊長為150像素的紅色四方形

D、D、一條50像素長的垂直紅線,一個邊長為150像素的紅色四方形

三、三、改錯題

判斷下面的程序片斷是否正確。若有錯,指出錯在哪里并改正;若正確,打

1、classMyClass

{intvar=100;

staticintgetVar()

(

returnvar;

)

}

2、publicclassMyClass

intdata;

voidMyClass(intd)

{data=d;}

)

3、publicclassMyMain

(

publicstaticvoidmain(Stringargs[])

{System.out.println(MyClassl.data);}

)

classMyClass1

(

intdata=10;

)

4、classlamAbstract

(

finalintf;

doubled;

abstractvoidmethod();

5、classparent

privateintmine;

)

classchildextendsparent

(

intgetMine()

{returnmine;)

)

6、classparent

(

privateintmine;

intgetMine()

{

returnmine;

)

)

classchildextendsparent

intmine;

intgetMine()

{returnsuper.getMine;}

)

7、classAmlWrong

(

intdatal,data2;

AmlWrongO

{datal=-l;}

AmIWrong(intd)

{data2=d;

this();

)

)

8、interfaceMylnlerface

(

voidmethod1();

)

abstractclassParentimplementsMylnterface

classChildextendsParent

voidmethod1()

System.out.println(4'Iamimplementednow!”);

)

9、publicstaticvoidmain(Stringargs[])

try(

charch=(char)System.in.read();

...〃其他語句

)

catch(Exceptione)

return;

catch(IOExceptione)

System.out.println(e.toStringO);

)

10>publicclassAmlWrongimplementsRunnable

(

Threadmt=Thread(this);

mt.start();

voidrun()

(

System.out.printlnC'Iamalivenow");

四、程序閱讀

1、閱讀以下程序,輸出結(jié)果為。

classQ1{

publicstaticvoidmain(Stringargs[])

doubled=1.23;

Decdec=newDec();

dec.decrement(d);

System.out.println(d);

classsDec{

publicvoiddecrement(doubledecMe){

decMe=decMe—0.1;

}

)

2、以下程序的輸出結(jié)果為。

publicclassShort{

publicstaticvoidmain(Stringargs[]){

StringBuffers=newStringBuffer("Hello");

if((s.length()>5)&&(s.append("there“).equals(<<False>>)))

System.oul.println(llvalueis"+s);

I

)

3、以下程序段的輸出結(jié)果為。

intx=0,y=4,z=5;

if(x>2){

if(y<5){

System.out.printlnC'Messageone");

else{

System.out.println(4€Messagetwo");

)

)

elseif(z>5){

System.out.println(44Messagethree");

)

else{

System.out.printlnC'Messagefour");

)

4、以下程序段的輸出結(jié)果為________________________________________

intj=2;

switch(j){

case2:

System.out.print(<4Valueistwo.");

case2+1:

System.out.printlnC^Valueisthree.");

break;

default:

System.out.printlnC'valueis"+j);

break;

}

5、5、閱讀以下程序段:

classParent

(

voidprintMe()

(

System.out.printlnC'parenf*);

)

)

classChildextendsParent

(

voidprintMe()

(

System.out.prinlln("child");

)

voidprintAll()

super.printMe();

this.printMe();

printMe();

)

)

publicclassTest_this

(

publicstaticvoidmain(Stringargs[])

(

ChildmyC=newChild();

myC.printAll();

)

)

輸出結(jié)果為;

6、以下程序段的輸出結(jié)果為_________________________________

publicclassEqualsMethod{

publicstaticvoidmain(String[]args){

Integernl=newInteger(47);

Integern2=newInteger(47);

System.out.print(n1==n2);

System.out.print(",”);

System.out.println(nl!=n2);

)

}

7、已有Bird類的定義如下:

packageabcde;

publicclassBird{

protectedstaticintreferenceCount=0;

publicBird(){referenceCount++;}

protectedvoidfly(){}

staticintgetReCount(){returnreferenceCount;}

}

有類Nightingale的定義如下,請寫出它的輸出結(jié)

果O

packagesingers;

classNightingaleextendsabcdc.Bird{

Nightingale(){referenceCount++;}

publicstaticvoidmain(Stringargs[]){

System.out.printC^Beforef^referenceCount);

Nightingaleflorence=newNightingale();

System.out.printlnC4Afteri^+referenceCount);

florence.fly();

)

)

8、以下程序段的輸出結(jié)果為。

classCruncher{

voidcrunch(inti){

System.out.println(44intversion");

I

voidcrunch(Strings){

System.out.println(4tStringversion'');

}

publicstaticvoidmain(Stringargs[J){

Crunchercrun=newCruncher();

charch='p';

crun.crunch(ch);

部分答案:

一、XXXJXXXVXXXVVVXXXXXJ

XJ

XJJXJXVVXX

二、BCADBCBABBCBCDCBCCAABBDB

三、1、getVar。為靜態(tài)方法,只能處理靜態(tài)域。

改正如下:

classMyClass

{intvar=100;

staticintgetVar()

(

returnvar;

)

)

2、構(gòu)造函數(shù)不能定義返回類型。

改正如下:

publicclassMyClass

intdata;

veid-MyClass(intd)

{data=d:}

)

3、data不是靜態(tài)域,不能通過類名引用。

改正如下:

publicclassMyMain

(

publicstaticvoidmain(Stringargs[])

{System.out.println(MyClassl.data);}

)

classMyClass1

(

staticintdata=10;

)

4>lamAbstract作為具體類中不能包含有抽象方法。

改正如下:

abstractclasslamAbstract或class

lamAbstract

finalintf;finalint

doubled;doubled;

abstractvoidmethod();abstfaeA

voidmethod();

})

5、mine為父類定義的私有域,子類無法繼承并引用。

改正如下:

classparent或classparent

((

privateintmine;privateintmine;

}

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論