2017計算機二級JAVA預(yù)測題及答案
2017年3月計算機二級考試時間為3月26日-29日,為了幫助考生順利通過計算機二級考試,下面百分網(wǎng)小編為大家?guī)碛嬎銠C二級JAVA預(yù)測題及答案,供大家參考學(xué)習(xí),預(yù)?忌荚図樌!
1.下列關(guān)于棧敘述正確的是( )。
A.棧頂元素能最先被刪除
B.棧頂元素最后才能被刪除
C.棧底元素永遠不能被刪除
D.以上三種說法都不對
2.下列敘述中正確的是( )。
A.有一個以上根結(jié)點的數(shù)據(jù)結(jié)構(gòu)不一定是非線性結(jié)構(gòu)
B.只有一個根結(jié)點的數(shù)據(jù)結(jié)構(gòu)不一定是線性結(jié)構(gòu)
C.循環(huán)鏈表是非線性結(jié)構(gòu)
D.雙向鏈表是非線性結(jié)構(gòu)
3.某二叉樹共有7個結(jié)點,其中葉子結(jié)點只有l(wèi)個,則該二叉樹的深度為(假設(shè)根結(jié)點在第1層)( )。
A.3
B.4
C.6
D.7
4.在軟件開發(fā)中,需求分析階段產(chǎn)生的主要文檔是( )。
A.軟件集成測試計劃
B.軟件詳細(xì)設(shè)計說明書
C.用戶手冊
D.軟件需求規(guī)格說明書
5.結(jié)構(gòu)化程序所要求的基本結(jié)構(gòu)不包括( )。
A.順序結(jié)構(gòu)
B.GOT()跳轉(zhuǎn)
C.選擇(分支)結(jié)構(gòu)
D.重復(fù)(循環(huán))結(jié)構(gòu)
6.下面描述中錯誤的是( )。
A.系統(tǒng)總體結(jié)構(gòu)圖支持軟件系統(tǒng)的詳細(xì)設(shè)計
B.軟件設(shè)計是將軟件需求轉(zhuǎn)換為軟件表示的過程
C.數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)庫設(shè)計是軟件設(shè)計的任務(wù)之一
D.PAD圖是軟件詳細(xì)設(shè)計的表示工具
7.負(fù)責(zé)數(shù)據(jù)庫中查詢操作的數(shù)據(jù)庫語言是( )。
A.數(shù)據(jù)定義語言
B.數(shù)據(jù)管理語言
C.數(shù)據(jù)操縱語言
D.數(shù)據(jù)控制語言
8.一個教師可講授多門課程,一門課程可由多個教師
講授。則實體教師和課程間的聯(lián)系是( )。
A.1:l聯(lián)系
B.1:m聯(lián)系
C.m:1聯(lián)系
D.m:n聯(lián)系
9.有三個關(guān)系R、S和T如下:
則由關(guān)系R和S得到關(guān)系T的操作是( )。
A.自然連接
B.交
C.除
D.并
10.定義無符號整數(shù)類為UInt,下面可以作為類UInt實例化值的是( )。
A.-369
B.369
C.0.369
D.整數(shù)集合{1,2,3,4,5}
11.下列關(guān)于面向?qū)ο蟮恼撌鲋,正確的是( )。
A.面由對象是指以對象為中心,分析、設(shè)計和實現(xiàn)應(yīng)用程序的機制
B.面向?qū)ο笫侵敢怨δ転橹行,分析、設(shè)計和實現(xiàn)應(yīng)用程序的機制
C.面向?qū)ο髢H適用于程序設(shè)計階段
D.面向?qū)ο笫且环N程序設(shè)計語言
12.語句"Hell0".equals("hell0");的正確執(zhí)行結(jié)果
public static void main(String[]args){
int[]x={0,1,2,3};
for{int i=0;i<3;1+=2){
try{
systcm.OUt.println(x[i+2]/x[i]+x[i+1]);
}catch(ArithmeticException e){
System.OUt.println("errorl"):
}catch(Exception e){
System.OUt.println("error2"):
}
}
}
}
A.errorl
B.error2
C.errorl
D.2
orror2 error2
16.下列整數(shù)的定義中,錯誤的是( )。
A.int f=314.;
B.int a=012;
C.int i=189;
D.int d=0x123;
17.要得到某目錄下的所有文件名,在下列代碼的下畫
線處應(yīng)填入的內(nèi)容是(兩個下畫線的填寫內(nèi)容相同)( )。
pathName=new (args[o]);
String[]fileNames=pathName.list();
A.FilefnputStream B.FileOutputStream
C.File D.RandomAccessFile
18.在下列代碼的下i畫線處應(yīng)填人的內(nèi)容是( )。
public class FirstSample{
public static void main( args[]){
System.out.println("你好!");
}
}
A.staff B.double
C.int D.String
19.Object類中的方法public int hashCode[],在其子類中
覆蓋該方法時,其方法修飾符可以是( )。
A.protected B.public
C.private D.缺省
20.下列代碼中的內(nèi)部類名是( )。
import java.awt.event.*;
lapoct javax.swin9.*;
class TalkingClock(
public void start(int interval,final boolean beep){
ActionListener listener=new
ActionListener(){
public void actionPerformed(ActionEvent e-
vent){
…
}
}
Timer t=new Timer(interval,listener);
t.start();
}
}
A.Timer
B.ActionListener
C.1istener
D.匿名
21.已知zipname是一個壓縮文件名。則zipname在下列代碼中出現(xiàn)的正確位置是( )。
ZipInputStream zin=
new ZipInputStzeam(new FileInputStream(①));
ZipEntry entry ;
while((entry=zin.getNextEntry(②))!=null){
fileCombo.addltem(entry.getNamc(③));
zin.closeEntry(④);
}
zin.close();
A.①
B.②
C.③
D.④
22.下列代碼的執(zhí)行結(jié)果是( )。
int numbers[]=new int[6];
for(int i=1;inumbers[[i]=i-1 ;
Systern.OUt.print(numbers[I]+"");
A.0 1 2 3 4 5
B.1 2 3 4 5 6
C.0 1 2 3 4
D.1 2 3 4 5
23.Java API ee支持線程的類或接口是( )。
、.java.lang.Thread
Ⅱ.java.lang.Runnable
、.java.lang.ThreadGroup
IV.java.io.Serializable
A.I,Ⅱ B.I,Ⅱ,Ⅲ
C.I,Ⅱ,IV D.I,Ⅱ,Ⅲ,Ⅳ
24.下列關(guān)于Test類的定義中,正確的是( )。
A.class Test implements Runnable{
public void run(){}
Dublic void someMethod[]{}
}
B.class Test implements Runnable(
puIblic void run();
}
C.class Test implements Runnable(
Dublic void someMethod[];
}
D.class Test implements Runnable(
public void someMethod(){}
}
25.下列方法被調(diào)用后,一定使調(diào)用線程改變當(dāng)前狀態(tài)的是( )。
A.notify()
B.yield()
C.sleep()
D.isAlive()
26.在堆棧類Sharedstack的定義中,為了保證堆棧在并發(fā)操作中數(shù)據(jù)的正確性,應(yīng)在下畫線處填入的修飾符是(兩個下畫線的填寫內(nèi)容相同)( )。
public class SharedStack{
int idx=0;
char[]data=new char[10];
public synchtonized void push(char c){……}
publR,synchronized void pop(){……}
}
A.Dublic
B.不使用修飾符
C.private
D.protected
27.關(guān)于下列代碼編譯或執(zhí)行結(jié)果的描述中,正確的是( )。
public class Test{
public static void main(String argsE]){
TcstThread pml=new TestThread("One")
pml.start();
TestThread pm2=new TestThread("Tw0")
pm2.start();
}
}
class TestThread extends Thread(
private String sTname="";
TestThread(String s){
sTname=s;
}
public void run(){
for(int i=O;i<2;i++){
try{
sleep(1000);
}catch(InterruptedException e){}
system.out.print(sTname+"");
}
}
}
A.不能通過編譯,TestThread類中不能定義變量和構(gòu)造方法
B.輸出One One Two Two
C.輸出Two One One Two
D.選項B或C都有可能出現(xiàn)
28.下列關(guān)于Applet的敘述中,正確的是( )。
A.為了使Applet在瀏覽器中運行,需要在HTML文件中嵌入相應(yīng)的Applet類
B.Applet不能從外部接收參數(shù)
C.Applet不能使用javac命令進行編譯
D.Java Application與Applet都必須包含main()方法
29.下列代碼的下畫線處應(yīng)填入的方法名是( )。
import java.awt.*;
import java.applet.*;
public class Hello extends Applet{
public void (Graphics g){
9.drawstring("How are you!",l0,10);
}
}
A.repaint B.println
C.paint D.show
30.下列變量的定義中,錯誤的是( )。
A.int X=3;
B.float f;d;
C.String s="Hell0";
D.boolean b=true;
31.下列代碼的執(zhí)行結(jié)果是( )。
int length="Hell0".length();
System.OUt.println(length);
A.5
B.2
C.10
D.6
32.下列代碼的編譯或執(zhí)行結(jié)果是( )。
public class Myval{
public static void main(string args[]){
MyVal m=new MyVal();
m.aMethod();
}
public void aMethod(){
boolean b[]=new Boolean[5];
System.OUt.println(b[0]);
}
}
A.1
B.null
C.0
D.編譯錯誤
33.若變量a是String類型的數(shù)據(jù),那么表達式(a+a)的類型是( )。
A.char
B.String
C.int
D.long
34.Component類中用于刷新組件的方法是( )。
A.getFont()
B.getName()
C.update()
D.paint()
35.鼠標(biāo)在窗口中移動時,產(chǎn)生的事件是( )。
A.ActionEvent
B.PrintEvent
C.KeyEvent
D.MouseEvent
36.一棵二叉樹的中序遍歷結(jié)果為DBEAFC,前序遍歷結(jié)果為ABDECF,則后序歷結(jié)果為( )。
A.ACFBED
B.DFBECA
C.ABCDEF
D.DEBFCA
37.在關(guān)系A(chǔ)(S,SN,D)和關(guān)系B(D,CN,NM)中,A的主關(guān)鍵字是S,B的主關(guān)鍵字是D,則關(guān)系A(chǔ)的外碼是( )。
A.CN
B.SN
C.S
D.D
38.若類聲明加上( )修飾符,則表示該類不能有子類。
A.close
B.final
C.down
D.end
39.在對象流中,對象的傳送首先要將所傳送的對象串行化,也就是實現(xiàn)Serializable接口。下列代碼中必須實現(xiàn) Serializable接口的類是( )。
obiectInput in=
new ObjectlnputStream(new FileInputStream("am-
ployee.dat"));
Employee[]newStaff=(Employee[1]in.readobject();
A.Employee B.Input
C.Staff D.Stream
40.下列代碼的執(zhí)行結(jié)果是( )。
public class Expression{
public static void main(String arga[](
Int vl=10,v2=99,v3=0;
System.Out.prIntln((vl}
}
A.9.9
B.3
C false
D.true
參考答案
1.A!窘馕觥織J窍薅ㄔ谝欢诉M行插入、刪除的先入后出的線性表數(shù)據(jù)結(jié)構(gòu),棧頂元素最后插入到棧中,但是最先被刪除;而棧底元素最先插入,最后被刪除。
2.D!窘馕觥烤性表的特點是:在數(shù)據(jù)元素的非空有限集合中;存在唯一的一個被稱為“第一個”的數(shù)據(jù)元素;存在唯一一個被稱為“最后一個”的數(shù)據(jù)元素;除第一個以外,集合中的每個數(shù)據(jù)元素均只有一個后繼;除最后一個以外,集合中的每個數(shù)據(jù)元素均只有一個后繼。因此,雙向表是非線性結(jié)構(gòu)。
3.D。【解析】對于任意一棵二叉樹T,如果葉子結(jié)點數(shù)為n0,度為2的結(jié)點數(shù)為n2,二者之間的關(guān)系是n0=n2+1,該題中度為2的結(jié)點數(shù)為0,且只有一個葉子結(jié)點,因此,樹中度為l的結(jié)點有6個,很容易想到樹的高度為7。
4.D。【解析】需求分析階段只能產(chǎn)生需求分析規(guī)格說明數(shù),A測試說明書是軟件測試階段生成的,B軟件詳細(xì)設(shè)計說明書是設(shè)計階段生成的,C用戶手冊是軟件發(fā)布時隨軟件一同交付給用戶的。
5.B!窘馕觥拷Y(jié)構(gòu)化程序設(shè)計的三種結(jié)構(gòu)是順序、分支和循環(huán),不包括goto跳轉(zhuǎn),它只是分支結(jié)構(gòu)的一種,也是一個關(guān)鍵字。
6.A!窘馕觥寇浖到y(tǒng)的總體結(jié)構(gòu)圖是軟件架構(gòu)設(shè)計的依據(jù),它并不能支持軟件的詳細(xì)設(shè)計。
7.C!窘馕觥繑(shù)據(jù)庫操縱語言專門負(fù)責(zé)查詢、增加和刪除等數(shù)據(jù)操作。
8.D。【解析】一個教師可以上多門課程,一門課程也可以由多個教師教授,這是典型的多對多的E—R關(guān)系。
9.C!窘馕觥縎中的關(guān)系全部出現(xiàn)在R中,只有做除法操作才會出現(xiàn)關(guān)系T。
10.B!窘馕觥緼是有符號數(shù),C是浮點數(shù),D是集合,并不是類的實例化對象,只有B完全符合。 11.A!窘馕觥棵嫦?qū)ο笫且环N程序設(shè)計方式,Java、 C++是面向?qū)ο笤O(shè)計的語言,而C是面向過程設(shè)計的語言。面向?qū)ο笤O(shè)計適應(yīng)于設(shè)計、編碼、實現(xiàn)、測試等一系列環(huán)節(jié)。
12.B!窘馕觥縅ava是強類型檢查語言,字符串的equals方法執(zhí)行的返回值是true或者false。
13.B!窘馕觥恳粋文件的public類最多可以有一個,但是可以包含多個import,包含的接口定義也可以有多個,包含的class類可以有多個,當(dāng)該文件命名時,可以以public類名來命名,反之編譯之后將有多個.class文件生成。
14.D。【解析】Java的關(guān)鍵字中不包含NULL,它是C語言的關(guān)鍵字,表示空。
15.C!窘馕觥慨(dāng)0作為除數(shù)時,會產(chǎn)生異常,而ArithmeticException和Exception兩類異常都內(nèi)部被捕捉到。
16.A!窘馕觥空麛(shù)的定義不能帶小數(shù)點,表明是一個浮點數(shù);其他三個都正確。
17.C。【解析】使用File類的list方法可以獲得目錄下所有文件名稱,F(xiàn)ileInputStream和FileOutputStream類都不具有l(wèi)ist方法。
18.D!窘馕觥窟@是學(xué)習(xí)Java語言接觸的第一個程序,main函數(shù)的參數(shù)是String args[]。
19.B!窘馕觥克械念惗际荗bject的子類,如果要覆蓋Object的equals方法則必須覆蓋hasCode方法,覆蓋時的屬性是public。
20.B。【解析】內(nèi)部類就是在類內(nèi)部重新定義的新類,該類能連接外部類,但是不能和外部類進行通信。AetionL.istenser有自己的類方法體,而Timer沒有,只是實例化了一個Timer對象。21.A!窘馕觥吭摮绦虻墓δ苁菑膠ip壓縮文件中獲取各個文件的名字。因此應(yīng)該在A處。
22.C!窘馕觥吭擃}是簡單的for循環(huán)考題,通過逐一判斷可得到答案,數(shù)組的長度是6,數(shù)組的內(nèi)容從下標(biāo)1開始,最大循環(huán)是5,numbers[5]的值是4。
23.A。【解析】java.lang.Thread類和java.lang.Runnable是創(chuàng)建線程的兩個方法,分別是實現(xiàn)Thread類和繼承 Runnable接口,而ThreadGroup類是管理一組線程的類。而Serializable是序列化,將一個對象的狀態(tài)保存起來,在適當(dāng)?shù)臅r候再獲得,它不支持線程。
24.A。【解析】java中實現(xiàn)多線程的方法之一就是實現(xiàn)Runnable接口中的run方法,把實現(xiàn)Runnable接口的子類對象傳遞給Thread類的構(gòu)造函數(shù)。
25.C!窘馕觥烤程調(diào)用sleep函數(shù)后,使當(dāng)前線程進入停滯狀態(tài)。yield函數(shù)可使線程進入可執(zhí)行狀態(tài),排程器從可執(zhí)行狀態(tài)的線程中重新排程,調(diào)用了yield函數(shù)的線程有可能被馬上執(zhí)行,也有可能不會馬上執(zhí)行。notify函數(shù)從線程等待池中移走任意一個線程,并把它放到鎖標(biāo)志等待池中,其狀態(tài)仍舊是等待。所以只有sleep一定會改變線程狀態(tài)。
26.C!窘馕觥慷褩V袨榱吮WC訪問數(shù)據(jù)的一致性,應(yīng)該對類的數(shù)據(jù)進行封裝,而實現(xiàn)類數(shù)據(jù)封裝的級別是private。
27.D!窘馕觥繂觾蓚線程,線程之間沒有進行同步,所以B和C均有可能。
28.A!窘馕觥縜pplet程序必須在瀏覽器中運行,因此它需要支持applet類,而applet程序可以接受外部參數(shù),可以使用javac編譯,但是可以不用包含main函數(shù)。
29.C。【解析】這里使用一個繼承自Applet的類來顯示字符。主要方法是在paint()方法中使用System.out.println()顯示。
30.B。【解析】正確的方法是float f,d;,中間應(yīng)該使用“,”而不是“;”,因為在Java中“;”表示一個語句結(jié)束。
31.A!窘馕觥孔址"Hello"的長度是5,java在計算字符串長度時只計算實際字符串長度。
32.A!窘馕觥縝oolean類型的變量值只有ture或false,b[0]的默認(rèn)初始值為false。
33.B。【解析】Java中允許兩個String類型進行+運算,其結(jié)果仍舊是String類型。
34.C!窘馕觥縢etFont方法用來獲取字體,getName方法用于獲取組件的名字,paint方法用于繪制組件,update方法用于刷新組件。
35.D。【解析】鼠標(biāo)在窗口中移動產(chǎn)生的事件是MouseEvent事件,ActionEvent是動作事件處理,PrintEvent是打印事件,KeyEvent是鍵盤事件。
36.D。【解析】這類題型一般通過前序遍歷的結(jié)果來找根結(jié)點,用中序遍歷的結(jié)構(gòu)找分支結(jié)點,通過畫出該二叉樹可得到結(jié)果。
37.D!窘馕觥客獯a用于建立和加強兩個關(guān)系之間的連接,通過將保存關(guān)系中主鍵值的一列或多列屬性添加到另一個關(guān)系中,可建立兩個關(guān)系之間的聯(lián)系,這個列屬性稱為第二關(guān)系的外碼。
38.B!窘馕觥咳绻粋類被final修飾符修飾說明這個類不可能有子類,被定義為final的類通常是一些有固定作用,用來完成某種標(biāo)準(zhǔn)功能的類。
39.A!窘馕觥恳粋對象能夠?qū)崿F(xiàn)序列化的前提是實現(xiàn)Serializable接口,Serializable接口沒有方法,更像是一個標(biāo)記,有了這個標(biāo)記的Class才能被序列化機制處理。
40.C!窘馕觥看祟}后半部分除數(shù)是0,按常理說應(yīng)該報異常,且不會得出結(jié)果。但是在計算&&運算時采用了部分結(jié)果方法,即先運算前半部分,如果前半部分為假,則不必計算后半部分,整個結(jié)構(gòu)為假,如果前半部分為真,這時才計算后半部分的值,在此,前部分已經(jīng)為假,所以結(jié)果就不用計算后半部分。
【計算機二級JAVA預(yù)測題及答案】相關(guān)文章:
2016年計算機二級《JAVA》預(yù)測題及答案10-18
2015年9月計算機二級Java預(yù)測題及答案06-08
計算機二級《Access》預(yù)測題及答案201610-24
2016計算機二級《Access》預(yù)測題及答案08-31
2017計算機二級Java強化題及答案07-01