- 相關(guān)推薦
2015計(jì)算機(jī)二級(jí)《JAVA》全真模擬試題及答案
一、選擇題
1.下列敘述中正確的是( )。
A.一個(gè)算法的空間復(fù)雜度大,則其時(shí)間復(fù)雜度必定大
B.一個(gè)算法的空間復(fù)雜度大,則其時(shí)間復(fù)雜度必定小
C.一個(gè)算法的時(shí)間復(fù)雜度大,則其空間復(fù)雜度必定小
D.上述3種說法都不對(duì)
2.開發(fā)軟件時(shí)對(duì)提高開發(fā)人員工作效率至關(guān)重要的是( )。
A.操作系統(tǒng)的資源管理功能
B.先進(jìn)的軟件開發(fā)工具和環(huán)境
C.程序員的數(shù)量
D.計(jì)算機(jī)的并行處理能力
3.程序設(shè)計(jì)語言的基本成分是數(shù)據(jù)成分、運(yùn)算成分、控制成分和( )。
A.對(duì)象成分
B.變量成分
C.語句成分
D.傳輸成分
4.對(duì)長度為n的線性表進(jìn)行順序查找,在最壞情況下需要比較的次數(shù)為( )。
A.125
B.n/2
C.n
D.n+l
5.有下列二叉樹,對(duì)此二叉樹前序遍歷的結(jié)果為( )。
A.XZCYAB
B.XYZABC
C.XYABCZ
D.XYAZBC
6.下列敘述中正確的是( )。
A.在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,各個(gè)對(duì)象之間具有密切的關(guān)系
B.在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,各個(gè)對(duì)象都是公用的
C.在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,各個(gè)對(duì)象之間相對(duì)獨(dú)立,相互依賴性小
D.上述3種說法都不對(duì)
7.軟件工程的理論和技術(shù)性研究的內(nèi)容主要包括軟件開發(fā)技術(shù)和( )。
A.消除軟件危機(jī)
B.軟件工程管理
C.程序設(shè)計(jì)自動(dòng)化
D.實(shí)現(xiàn)軟件可重用
8.在對(duì)象方法中,一個(gè)對(duì)象請(qǐng)求另一個(gè)對(duì)象為其服務(wù)的方式是通過發(fā)送( )。
A.調(diào)用語句
B.命令
C.H令
D.消息
9.下列選項(xiàng)中,是軟件調(diào)試技術(shù)的是( )。
A.錯(cuò)誤推斷
B.集成測(cè)試
C.回溯法
D.邊界值分析
10.數(shù)據(jù)庫DB、數(shù)據(jù)庫系統(tǒng)DBS、數(shù)據(jù)庫管理系統(tǒng)DBMS之間的關(guān)系是( )。
A.DB包括DBS和DBMS
B.DBMS包括DB和DBS
C.DBS包括DB和DBMS
D.沒有任何關(guān)系
11.下列( )不是高級(jí)程序設(shè)計(jì)語言。
A.FORTRAN
B.Java
C.C++
D.VisualASM
12.16根地址總線的尋址范圍是( )。
A.531KB
B.64KB
C.640KB
D.1MB
13.在一所大學(xué)中,每個(gè)系都有自己的局域網(wǎng),則連接各個(gè)系的校園網(wǎng)( )。
A.是廣域網(wǎng)
B.還是局域網(wǎng)
C.是地區(qū)網(wǎng)
D.這些局域網(wǎng)不能互連
14.下列關(guān)于信息加密的敘述中,正確的是( )。
A.加密通過加密算法實(shí)現(xiàn)
B.加密前的文件稱為密文
C.加密后的文件稱為明文
D.將明文變?yōu)槊芪牡倪^程稱為解密
15.下列關(guān)于域名和IP地址的敘述中,不正確的是( )。
A.在Internet中訪問一臺(tái)主機(jī)必須使用它的主機(jī)名
B.200.201.202.203是一個(gè)C類IP地址
C.IP地址采用的是分層結(jié)構(gòu)
D.主機(jī)名與IP地址是一一對(duì)應(yīng)的
16.Java語言中。負(fù)責(zé)并發(fā)管理的機(jī)制是( )。
A.垃圾回收
B.虛擬機(jī)
C.代碼安全
D.多線程
17.下列描述中,錯(cuò)誤的是( )。
A.Java要求編程者管理內(nèi)存
B.Java的安全性體現(xiàn)在多個(gè)層次上
C.Applet要求在支持Java的瀏覽器上運(yùn)行
D.Java有多線程機(jī)制
18.Java為移動(dòng)設(shè)備提供的平臺(tái)是( )。
A.J2ME
B.J2SE
C.J2EE
D.JDK5.0
19.JDK中提供的文檔生成器是( )。
A.javadoc.exe
B.javap.exe
C.java.exe
D.javaprof.exe
20.下列不屬于Swing中構(gòu)件的是( )。
A.JPanel
B.JTable
C.Menu
D.JFrame
21.閱讀下面程序
importjava.io.*;
public class TypeTransition{
public static void main(String args[]){
char a=’h’;
int i=100 ;
int J=97;
int aa=a+i;
System.out.println("aa="+aa);
char bb=(char)j;
System.out.println("bb="+bb):
}
}
如果輸出結(jié)果的第二行為bb=a,那么第一行的輸出結(jié)果是( )。
A.aa=I
B.aa=204
C.aa=v
D.aa=156
22.閱讀下面程序
public class Operators And Expressions(
void equals Methodl(){
Stringsl一new String("how are you");
Strings2=new String("how are you");
System.out.println(s1= =s2):
}
public static void main(String args[]){
Operators And Expressions Oper And Exp=new Oper-
ators And Expressions
();
//用于復(fù)合類型數(shù)據(jù)的”= =”運(yùn)算符
OperAndExp.equalsMethodl();
}
}
程序運(yùn)行結(jié)果是( )。
A.= =
B.true
C.false
D.equal
23.閱讀下面代碼
if(x= =0){System.out.println("冠軍");)
elseif(x>一3){System.Out.println("亞軍");}
else{System.out.println("季軍");}
若要求打印字符串”季軍”,則變量X的取值范圍是( )。
A.x=d&x<=-3
B.x>O
C.x>-3
D.x<=-3
24.下列關(guān)于構(gòu)造方法的敘述中,錯(cuò)誤的是( )。
A.Java語言規(guī)定構(gòu)造方法名與類名必須相同
B.Java語言規(guī)定構(gòu)造方法沒有返回值,但不用void聲明
C.Java語言規(guī)定構(gòu)造方法不可以重載
D.Java語言規(guī)定構(gòu)造方法只能通過new自動(dòng)調(diào)用
25.下列適配器類中不屬于事件適配器的是( )。
A.MouseAdapter
B.KeyAdapter
C.ComponentAdapter
D.FrameAdapter
26.下列類中屬于字節(jié)輸入抽象類的是( )。
A.FileInputStream
B.ObjectInputStream
C.FiterInputStream
D.InputStream
27.能向內(nèi)部直接寫入數(shù)據(jù)的流是( )。
A.FileOutputStream
B.FileInputStream
C.ByteArrayOutputStream
D.ByteArraylnputStream
28.下列運(yùn)算符中屬于關(guān)系運(yùn)算符的是( )。
A.= =
B.=
C.+ =
D.- =
29.下列方法中,聲明拋出InterruptedException類型異常的方法是( )。
A.suspend()
B.resume()
C.sleep()
D.start()
30.下列關(guān)于System類的敘述中,錯(cuò)誤的是( )。
A.System類是一個(gè)final類
B.System類不能實(shí)例化
C.System類中沒有定義屬性
D.System類主要提供了系統(tǒng)環(huán)境參數(shù)的訪問
31.閱讀下面程序
public class Increment{
public static void main(stringargs[]){
int C;
c=5:
System.out.println(c);
System.out.println(c++):
System.out.println(c);
}
}
程序運(yùn)行結(jié)果是( )。
A.5
6
6
B.5
5
6
C.6
7
7
D.6
6
6
32.下列敘述中,錯(cuò)誤的是( )。
A.JavaApplication與Applet所用編譯命令相同
B.通常情況下JavaApplication只能有一個(gè)main()方法
C.JavaApplet必須有HTML文件才能運(yùn)行
D.JavaApplet程序的.class文件可用Java命令運(yùn)行
33.下列關(guān)于Java語言中線程的敘述中,正確的是( )。
A.線程由代碼、數(shù)據(jù)、內(nèi)核狀態(tài)和一組寄存器組成
B.線程間的數(shù)據(jù)是不共享的
C.用戶只能通過創(chuàng)建Thread類的實(shí)例或者定義和創(chuàng)建Thread子類的實(shí)例,建立和控制自己的線程
D.因多線程并發(fā)執(zhí)行而引起的執(zhí)行順序的不確定性可能造成執(zhí)行結(jié)果的不確定
34.處理對(duì)象傳輸?shù)慕涌谑? )。
A.Serializable
B.C:loneable
C.hemListener
D.ActionListener
35.在讀取二進(jìn)制數(shù)據(jù)文件的記錄時(shí),為了提高效率常
常使用的一種輔助類是( )。
A.InputStream
B.FileInputStream
C.StringBuffer
D.BufferedReader
36.在Applet中顯示文字、圖形等信息時(shí),應(yīng)使用的方法是( )。
A.init()
B.start()
C.paint()
D.destroy()
37.關(guān)于線程的生命周期以下狀態(tài)正確的是( )。
A.新建狀態(tài)、可運(yùn)行狀態(tài)、阻塞狀態(tài)、恢復(fù)狀態(tài)和終止?fàn)顟B(tài)
B.新建狀態(tài)、運(yùn)行狀態(tài)、阻塞狀態(tài)、恢復(fù)狀態(tài)和終止?fàn)顟B(tài)
C.新建狀態(tài)、可運(yùn)行狀態(tài)、運(yùn)行狀態(tài)、阻塞狀態(tài)和終止?fàn)顟B(tài)
D.新建狀態(tài)、可運(yùn)行狀態(tài)、運(yùn)行狀態(tài)、恢復(fù)狀態(tài)和終止?fàn)顟B(tài)
38.Thread類中能運(yùn)行線程的方法是( )。
A.resume()
B.start()
C.run()
D.init()
39.以下不是APPLET標(biāo)記的選項(xiàng)是( )。
A.PARAM
B.BODY
C.CODEBASE
D.ALT
40.在Java中,與數(shù)據(jù)庫連接的技術(shù)是( )。
A.開放數(shù)據(jù)庫連接
B.Java數(shù)據(jù)庫連接
C.數(shù)據(jù)庫廠家驅(qū)動(dòng)程序
D.數(shù)據(jù)庫廠家的連接協(xié)議
二、基本操作題
本題定義了一個(gè)求兩個(gè)數(shù)的最大值的方法max,并調(diào)用該方法計(jì)算67和23的最大值。
public class javal{
public static void main(String[]args){
javal temp=new javal();
int res=max(67,23);
System.out.println("res="+res);
}
static int maX( ){
int maxNum;
if(a>b)
;
else
maxNum=b;
;
}
}
三、簡單應(yīng)用題
本題的功能是對(duì)下拉菜單項(xiàng)的操作,包括添加和刪除。頁面包括一個(gè)下拉菜單、一個(gè)文本框和兩個(gè)按鈕“刪除”和“添加”,選中下拉菜單的一項(xiàng)后,可以通過“刪除”按鈕從下拉菜單中刪除該項(xiàng),在文本框中填入字符串后,單擊“添加”按鈕就可以將該項(xiàng)添加到下拉菜單中,所有信息都將顯示在右側(cè)的文本域中。
import java.awt.*;
import java.awt.event.*;
public class java2 extends java.applet.Applet imple-
ments hemListener,ActionListener
{Choice choice;
TextField text;
TextArea area;
Button add,del;
public void init() .
{choice:new Choice();
text=new TextField(8);
area:new TextArea(6,15);
choice.add("音樂天地");
choice.add("武術(shù)天地");
choice.add("象棋樂園");
choice.add("交友聊天");
add=new Button("添加");
del=new Button("刪除");
add.addActionListener(this);
del.addActionListener(this);
choice.addItemListener(this);
add(choice);
add(del);add(text);add(add);add(area);
}
public void itemStateChanged(hemEvent e)
{String name= ;
int index=choice.getSelectedIndex();
area.setText("\n"+index+":"+name);
}
public void actionPerformed(ActionEvent e)
{if(e.getSource()= =add||e.getSource()= =
text)
{String name=text.getText();
if(name.length()>0)
{choice.add(name);
choice.select(name);
area.append("\n添加"+name);
}
}
else if(e.getSource()= =del)
{choice.remove( );
area.append("\n刪除"+choice.getSelectedItem
());
}
}
}
四、綜合應(yīng)用題
本題的功能是定義自已的組件類。窗口中排布著12
個(gè)按鈕,鼠標(biāo)移動(dòng)按鈕時(shí),按鈕背景顏色改變,用鼠標(biāo)單擊
按鈕時(shí),后臺(tái)將顯示該按鈕對(duì)應(yīng)的字符。
import java.awt.*;
import java.awt.event.*;
import java.util.*;
class java3 extends Frame{
String keys="l23456789*0#";
java3(){
super("java3");
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(O);
}
});
setLayout(new GridLayout(4,3,6,6));
for(int i=0;i KeyButton kb=new KeyButton(keys.charAt
(i));
kb.addkeyListener(this);
kb.setBackground(Color.pink);
kb.setForeground(Color.black);
add(kb);
}
setSize(200,200);
show();
}
class KeyEventHandler extends KeyAdapter{
public void keyTyPed(KeyEvent evt){
System.out.println(evt.getChar());
}
}
public static void main(String[]args){
newjava3();
}
}
class KeyButton extends Component{
KeyListener keyListener;
boolean highlighted;
char key;
KeyButton(char k){
this.key=k;
addMouseListener(new MouseEventHandler()):
}
public void paint(Graphics g){
int W=getSize().width;
int h=getSize().height;
String s=""+key;
FontMetrics fm=g.getFontMetrics();
if(highlighted){
g.setColor(getBackground());
g.fillRoundRect(0,0,w-1,h-1,10,10);
}
g.setColor(getForeground());
g.drawRoundRect(0,0,w-1,h-1,10,10);
g.drawString(s,(w-fm.stringWidth(s))/2,
(h-fm.getHeight())/2+fm.getAscent());
}
class MouseEventHandler extends MouseAdapter{
public void mousePressed(MouseEvent evt){
if(keyListener!=null){
keyListener.keyTyped(
new KeyEvent(KeyButton.this,KeyEvent.KEY_
TYPED,
System.currentTimeMillis(),
0,KeyEvent.VK_UNDEFINED,key));
}
}
public void mouseEntered(MouseEvent evt){
highlighted=true;
repaint();
}
public void mouseExited(MouseEvent evt){
highlighted=false;
repaint();
}
}
public synchronized void addKeyListerner(KeyLis-
tener l){
keyListener=AWTEventMuhieaster.add(key-
Listener,1);
}
public synchronized void removeKeyListener(Key-
Listener l){
keyListener=AWTEventMuhicaster.remove
(keyListener,1);
}
}
一、選擇題
1.D。解析:算法的時(shí)間復(fù)雜度和空間復(fù)雜度是從不同的角度來衡量算法的執(zhí)行情況的,它們之間沒有內(nèi)在聯(lián)系。
2.B。解析:先進(jìn)的軟件開發(fā)工具和環(huán)境對(duì)提高開發(fā)人員工作效率是至關(guān)重要的。
3.D。解析:程序設(shè)計(jì)語言的基本成分有:數(shù)據(jù)成分,用于描述程序所涉及的數(shù)據(jù);運(yùn)算成分,用于描述程序中所包含的運(yùn)算;控制成分,用于描述程序中所包含的控制;傳輸成分,用于表達(dá)程序中數(shù)據(jù)的傳輸。
4.C。解析:對(duì)線性表進(jìn)行順序查找時(shí),從表中的第一個(gè)元素開始,將給定的值與表中逐個(gè)元素的關(guān)鍵字進(jìn)行比較,直到兩者相符,查找到所要找的元素為止。在最壞情況
下,要查找的元素是表的最后一個(gè)元素或查找失敗,這兩種情況都需要將這個(gè)元素與表中的所有元素進(jìn)行比較,因此比較次數(shù)為n。
5.D。解析:對(duì)二叉樹的前序遍歷是指:先訪問根結(jié)點(diǎn),然后訪問左子樹,最后訪問右子樹,并且,在訪問左、右子樹時(shí),先訪問根結(jié)點(diǎn),再依次訪問其左、右子樹。
6.C。解析:面向?qū)ο蟮某绦蛟O(shè)計(jì)是用對(duì)象模擬問題領(lǐng)域中的實(shí)體,各對(duì)象之間相對(duì)獨(dú)立,相互依賴性小,通過消息來實(shí)現(xiàn)對(duì)象之間的相互聯(lián)系。
7.B。解析:基于軟件工程的目標(biāo),軟件工程的理論和技術(shù)性研究的內(nèi)容主要包括軟件開發(fā)技術(shù)和軟件工程管理。
8.D。解析:在面向?qū)ο蠓椒ㄖ,?duì)象之間通過消息進(jìn)行通信。消息中只包含傳遞者的要求,但并不指示接受者應(yīng)該怎么完成這些處理。
9.C。解析:軟件調(diào)試技術(shù)包括強(qiáng)行排錯(cuò)法、回溯法和原因排除法。邊界值分析、錯(cuò)誤推斷都是黑盒測(cè)試的方法。
10.C。解析:數(shù)據(jù)庫系統(tǒng)(DBS)由數(shù)據(jù)庫(DB)、數(shù)據(jù)庫管理系統(tǒng)(DBMS)、數(shù)據(jù)庫管理員、硬件平臺(tái)和軟件平臺(tái)5個(gè)部分組成,因此DB和DBMS都是DBS的組成部分。
11.D。解析:高級(jí)語言是一類人工設(shè)計(jì)的語言,因?yàn)樗鼘?duì)具體的算法進(jìn)行了描述,所以又稱為算法語言。它是面向程序設(shè)計(jì)獨(dú)立于計(jì)算機(jī)的硬件。目前,計(jì)算機(jī)常用的高級(jí)語言有:BASIC語言、FORTRAN語言、COBOL語言、PASCAL語言、C語言、PROLOG語言、而當(dāng)前流行的,面向?qū)ο蟮某绦蛟O(shè)計(jì)語言有C++和用于網(wǎng)絡(luò)環(huán)境的程序設(shè)計(jì)語言Java等。
12.B。解析:假設(shè)地址總線有n條,內(nèi)存的尋址范圍是2n。
13.B。解析:廣域網(wǎng)是指遠(yuǎn)距離的計(jì)算機(jī)互聯(lián)網(wǎng)絡(luò),分布范圍可達(dá)幾千千米乃至上萬千米甚至跨越國界、州界、遍及全球范圍。局域網(wǎng)是指一個(gè)局部區(qū)域中的、近距離的計(jì)算機(jī)互聯(lián)網(wǎng)絡(luò),通常采用有線方式連接,分布范圍從幾百米到幾千米。例如,一座大樓內(nèi)或相鄰的幾座樓之間的互聯(lián)網(wǎng)絡(luò)。一個(gè)單位、學(xué)校內(nèi)部的網(wǎng)絡(luò)多為局域網(wǎng)。
14.A。解析:一般人們將加密前的文件稱為明文,而加密后的文件稱為密文,因此加密的目的就是將明文變?yōu)槊芪。而反過來將密文變?yōu)槊魑牡倪^程則稱為解密。
15.A。解析:每臺(tái)直接連接到Internet上的計(jì)算機(jī)、路由器都必須有唯一的IP地址。IP地址是Internet賴以工作的基礎(chǔ)。Internet中的計(jì)算機(jī)與路由器的IP地址采用分層結(jié)構(gòu),它是由網(wǎng)絡(luò)地址與主機(jī)地址兩部分組成。對(duì)于C類地址,其網(wǎng)絡(luò)地址空間長度為21位,主機(jī)地址空間長度為8位,C類I P地址范圍從:l92.0.0.0~223.255.255.255。主機(jī)名與它的IP地址一一對(duì)應(yīng),因此在Internet上訪問一臺(tái)主機(jī)既可以使用它的主機(jī)名,也可以使用它的I P地址。
16.D。解析:多線程是Java程序的并發(fā)機(jī)制,它能同步共享數(shù)據(jù)、處理不同的事件。
17.A。解析:為了充分利用資源,Java有一個(gè)系統(tǒng)級(jí)的線程,用來對(duì)內(nèi)存的使用進(jìn)行跟蹤,它可以在系統(tǒng)空閑時(shí)對(duì)不用的內(nèi)存空間進(jìn)行回收,從而使程序員從繁忙的內(nèi)存管理中解放出來。
18.A。解析:Java 2平臺(tái)包括:J2ME平臺(tái)、J2SE平臺(tái)和J2EE平臺(tái)。其中:J2ME是為嵌入式和移動(dòng)設(shè)備提供的Java平臺(tái);J2SE是面向企業(yè)級(jí)應(yīng)用與服務(wù)的綜合性標(biāo)準(zhǔn)開發(fā)平臺(tái);J2EE是面向大型企業(yè)級(jí)用容器管理專用構(gòu)件的應(yīng)用平臺(tái)。而JDK 5.0是一個(gè)Java開發(fā)軟件包。
19.A。解析:在JDK中:javadoc.exe是文檔生成器,將Java源代碼和包以MML格式生成AP文檔;java.exe是Java解釋器;javap.exe是Java反匯編器;javaprof.exe是Java剖析工具,提供解釋器剖析信息。
20.C。解析:JPanel是Swing的中間容器;JTable是Swing中可編輯信息的構(gòu)件;JFrame是Swing的頂層容器。
21.B。解析:本題考查的是Java的基本數(shù)據(jù)類型及其運(yùn)算。程序開始生成了一個(gè)字符型變量a和3個(gè)整型變量i、j、aa。而整型變量aa的初始值是a+i,其中a是一個(gè)字符型變量。如何進(jìn)行加法運(yùn)算呢?Java語言規(guī)定,char型數(shù)據(jù)可以自動(dòng)轉(zhuǎn)換成int類型,轉(zhuǎn)換的結(jié)果就是該字符的ASCIl碼值。因此,整型變量aa的初始值為字符”h”的ASCIl碼值加上l00。如果記住h的ASCIl碼值是104,則直接就確定aa的初始值是204,選項(xiàng)B為正確答案。如果記不得h的ASCIl碼,題目中則給出提示。題目中說”輸出結(jié)果的第二行為bb=a”,也就是字符bb的值為字符a,bb的生成語句是char bb=(char)j,是把整型變量j的值強(qiáng)制轉(zhuǎn)換為字符型。同樣,把ASCIl碼值為j(97)所對(duì)應(yīng)的字符賦值給bb。顯然,字符a的ASCIl碼值為97,字符b的ASCIl碼值為98,依次類推,字符h的ASCIl碼為l04。因此,本題的正確答案是B。
22.C。解析:本題考查的是Java語言中運(yùn)算符的特殊用法。相等比較運(yùn)算符"= =",不僅可用于基本類型的數(shù)據(jù)之間的比較,還可以用于復(fù)合類型數(shù)據(jù)之間的比較。但是,對(duì)于復(fù)合類型數(shù)據(jù)的"= ="運(yùn)算,其比較的目標(biāo)是兩個(gè)操作數(shù)是否是同一個(gè)對(duì)象。如果需要比較兩個(gè)對(duì)象的值是否相同,則可以調(diào)用equals()方法。題目中函數(shù)equalsMethodl()的代碼非常簡單,首先生成兩個(gè)字符串對(duì)象sl和s2,然后輸出表達(dá)式"sl= =s2"的結(jié)果。根據(jù)上面介紹的相等比較運(yùn)算符的用法,字符串對(duì)象sl和s2是復(fù)合類型數(shù)據(jù),因此表達(dá)式"sl= =s2"比較的是sl和s2是否同一個(gè)對(duì)象。顯然,sl和s2雖然具有相同的值,即"how are you",但它們是兩個(gè)不同的對(duì)象。因此,本題的正確答案是C。
23.D。解析:本題考查的是條件分支語句if-else。if-else根據(jù)判定條件的真假來執(zhí)行兩種操作中的一種。當(dāng)條件為真時(shí),執(zhí)行if語句后面的代碼塊;當(dāng)條件為假時(shí),執(zhí)行else后面的代碼塊。題目中的代碼段是一個(gè)if-else的嵌套語句,根據(jù)if-else語句的執(zhí)行過程來進(jìn)行分析。當(dāng)x的值為0時(shí),布爾表達(dá)式"x= =0"的結(jié)果為真,就輸出”冠軍”;當(dāng)x的值不為0時(shí),則執(zhí)行else語句中的內(nèi)容。else語句中的代碼又是一個(gè)if-else語句,還是和上面一樣進(jìn)行分析。當(dāng)X的值不等于0且大于-3時(shí),布爾表達(dá)式”x>-3”的結(jié)果為真,輸出"亞軍";當(dāng)x的值不等于0且不大干-3,也就是X的值不等于0同時(shí)x的值小于等于-3時(shí),則輸出"季軍"。經(jīng)過上述分析可知,要想輸出"季軍",x所滿足的條件為x!=O&x<=-3,但是當(dāng)x<=-3時(shí),x的值一定不會(huì)為0。所以,X所滿足的條件可以簡寫為x<=-3。因此,本題的正確答案為D。
24.C。解析:本題考查的是構(gòu)造方法的使用。Java語言中,構(gòu)造方法是一種特殊的方法,是為對(duì)象初始化操作編寫的方法,用它來定義對(duì)象的初始狀態(tài)。Java中的每個(gè)類都有構(gòu)造方法,它也是由方法名、參數(shù)和方法體組成的。構(gòu)造方法有如下特點(diǎn):
構(gòu)造方法的名字必須與類名相同。
構(gòu)造方法不返回任何數(shù)據(jù),但不用void來聲明。
用戶不能直接調(diào)用構(gòu)造方法,必須通過關(guān)鍵字new自動(dòng)調(diào)用。
構(gòu)造方法可由用戶在類中定義,默認(rèn)時(shí)由Java語言自動(dòng)生成。但它是個(gè)空方法,變量被賦予該數(shù)據(jù)類型的默認(rèn)值。
在構(gòu)造方法實(shí)現(xiàn)中,可以進(jìn)行方法重載,即定義多個(gè)構(gòu)造方法。重載構(gòu)造方法的目的是使類具有不同的初始值,為類對(duì)象的初始化提供方便。根據(jù)上述構(gòu)造方法的特點(diǎn)可知,本題選項(xiàng)C的說法是錯(cuò)誤的。
25.D。解析:本題考查java.awt.event包中定義的適配器類。該包中定義的適配器類包括①ComponentAdapter構(gòu)件適配器;②ContainerAdapter容器適配器;③FocusAdapter焦點(diǎn)適配器;④MouseAdapter鼠標(biāo)適配器;⑤KeyAdapter鍵盤適配器⑥WindowAdapter窗口適配器,由此可知本題答案為D。
26.D。解析:在Java中定義了兩種類型的流,字節(jié)型和字符型,這兩種流分別用4個(gè)抽象類表示:InputStream,OutputStream,Reader,Writer,其中InptutStream和OutStream表示字節(jié)流,Reader和Reader是表示字符流,所以字節(jié)輸入抽象類為InptutStream。
27.C。解析:本題考查Java的內(nèi)存讀寫。在java.io中,還提供了 ByteArrayInputStream、ByteArrayoutputStream和StringBufferInputStream類可直接訪問內(nèi)存,它們是InputStream和OutputStream的子類。用ByteArrayOutputStream可向字節(jié)數(shù)組寫入數(shù)據(jù);ByteArrayInputStream可從字節(jié)數(shù)組中讀取數(shù)據(jù)。
28.A。解析:本題考查Java的關(guān)系運(yùn)算符。B中寫法不正確,C、D均為賦值運(yùn)算符。
29.C。解析:本題考查線程的基本操作。Java中提供了interrupt方法用來中斷一個(gè)線程,當(dāng)調(diào)用一個(gè)線程的interrupt方法時(shí),即向該線程發(fā)送一個(gè)中斷請(qǐng)求。在調(diào)用線程的interrupt方法時(shí),如果該線程由于調(diào)用了sleep方法或wait方法而正在處于阻塞狀態(tài),那么線程會(huì)拋出一個(gè)InterruptException異常。
30.C。解析:本題考查System類的基本知識(shí)。Systern類是一個(gè)final類,所有的方法都用類變量來調(diào)用,對(duì)System類不可能實(shí)例化。System類主要用來提供標(biāo)準(zhǔn)輸入/輸出和系統(tǒng)環(huán)境信息的訪問設(shè)置。而System類的屬性有:①public static final InputStream in;標(biāo)準(zhǔn)輸入;②publicstatic final OutputStream out;標(biāo)準(zhǔn)輸出;③pubhc static finalPrintStream err;標(biāo)準(zhǔn)錯(cuò)誤輸出。
31.B。解析:本題考查的是Java增量運(yùn)算符"++"。 x++是先使用后加l,即首先使用X的值進(jìn)行表達(dá)式的計(jì)算,然后才對(duì)x的值加1。而++x是先加1后使用,即首先對(duì)x的值加1,然后使用x的值進(jìn)行表達(dá)式的計(jì)算。本題首先生成一個(gè)整型變量C,其初始值為5。第一條輸出語句輸出c的初始值,即5。然后,第二條輸出表達(dá)式c++的結(jié)果,即先輸出C的值,然后才對(duì)c的值加1,所以,第二條輸出語句輸出的是5,輸出后c的結(jié)果才為6。最后一條輸出語句輸出結(jié)果為6。因此,本題的正確答案為B。
32.D。解析:本題考查的是Java中的Applet以及Applet與Application的區(qū)別。Applet是能夠嵌入HTML語言中,并能夠在瀏覽器中運(yùn)行的類。Applet的運(yùn)行環(huán)境是Web瀏覽器,所以必須建立HTML文件,告訴瀏覽器如何加載與運(yùn)行Applet。因?yàn)锳pplet是不能直接通過Java命令行啟動(dòng)運(yùn)行的。所以選項(xiàng)D的說法錯(cuò)誤。
33.D。解析:本題考查線程的基本知識(shí)。線程與進(jìn)程在概念上是相關(guān)的,線程是由表示程序運(yùn)行狀態(tài)的寄存器、程序計(jì)數(shù)器、棧指針以及堆棧組成,它不包含進(jìn)程地址空間中的代碼和數(shù)據(jù)。代碼所操作的數(shù)據(jù)是Java線程模型中的一個(gè)組成部分,數(shù)據(jù)與代碼是獨(dú)立的。數(shù)
據(jù)可以被多個(gè)線程共享,也可不共享。Java語言中提供兩種創(chuàng)建線程的方法,一種是通過繼承Thread類創(chuàng)建線程,另一種是通過實(shí)現(xiàn)Runnable接口來創(chuàng)建線程。
34.A。解析:處理對(duì)象傳輸就是把對(duì)象串行化。Java語言中,如果要串行化某些類的對(duì)象,這些類就必須實(shí)現(xiàn)Serializable接口。
35.C。解析:本題考查Java語言的輸入/輸出流。InputStream類、FilelnputStream類和BufferedReader類都是Java語言中和輸入輸出直接相關(guān)的類,不屬于輔助類,因此可以直接判斷出選項(xiàng)C為正確答案。
36.C。解析:paint()是與Applet顯示相關(guān)的方法,由它來具體執(zhí)行Applet的繪制功能。init()方法用于初始化Applet,start()方法用于激活A(yù)pplet。在init()方法完成后,將調(diào)用start()方法,而且在Applet每次顯示時(shí)都要調(diào)用。destroy()方法用于徹底終止Applet。
37.C。解析:線程生命周期中出現(xiàn)的狀態(tài)包括:新建狀態(tài)、可運(yùn)行狀態(tài)、運(yùn)行狀態(tài)、阻塞狀態(tài)和終止?fàn)顟B(tài)。
38.C。解析:resume()是Thread類提供的用于線程控制的方法;start()是Thread類中的方法,新建的線程不會(huì)自動(dòng)運(yùn)行,必須調(diào)用線程的start()方法才能運(yùn)行該線程;run()是Thread類中的方法,在該方法中定義了線程的具體行為,線程開始執(zhí)行時(shí),就是從它的run()方法開始執(zhí)行的,就像Java應(yīng)用程序從main()開始、Applet從ink()開始一樣;init()不是Thread類中的方法。
39.B。
二、基本操作題
第1處:int a,int b
第2處:maxNum=a
第3處:return maxNum
【解析】第1處定義max()方法中的兩個(gè)整型形參;第2處將兩者中較大的賦給maxNum;第3處返回最大值。
三、簡單應(yīng)用題
第1處:choice.getSelectedltem()
第2處:choice.getSelectedIndex()
【解析】第1處是獲取當(dāng)前選中項(xiàng)的數(shù)據(jù);第2處清除選中項(xiàng)的索引號(hào)。
四、綜合應(yīng)用題
第1處:int i=0;i 第2處:kb.addKeyListener(new KeyEventHandler())
第3處:system.out.println(evt.getKeyChar())
【解析】第1處是作為遍歷keys中元素的條件,而keys中的字符元素就是各個(gè)按鈕對(duì)應(yīng)的字符。第2處注冊(cè)鍵盤事件監(jiān)聽功能,KeyButton實(shí)現(xiàn)了KeyLIstener接口,而kb是KeyButton類的對(duì)象,所以它是合格的監(jiān)聽者。第3處將從鍵盤讀到的字符輸出。
【計(jì)算機(jī)二級(jí)《JAVA》全真模擬試題及答案】相關(guān)文章:
計(jì)算機(jī)二級(jí)JAVA考試模擬試題及答案10-16
計(jì)算機(jī)二級(jí)考試Java模擬試題及答案201710-25
計(jì)算機(jī)二級(jí)《MSOffice》全真模擬試題09-29
9月計(jì)算機(jī)二級(jí)MSOffice全真模擬試題及答案06-11
計(jì)算機(jī)二級(jí)考試JAVA模擬試題10-12
計(jì)算機(jī)二級(jí)JAVA考試精選模擬試題08-12
73月計(jì)算機(jī)二級(jí)JAVA臨考模擬試題與答案07-02