為大家收集整理了《2014年計(jì)算機(jī)二級(jí)考試JAVA考前預(yù)測(cè)試題》供大家參考,希望對(duì)大家有所幫助?。?!
一、選擇題(每小題1分,共40小題,共40分)
1.常采用的兩種存儲(chǔ)結(jié)構(gòu)是( )。
A.順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
B.散列方法和索引方式
C.鏈表存儲(chǔ)結(jié)構(gòu)和數(shù)組
D.線性存儲(chǔ)結(jié)構(gòu)和非線性存儲(chǔ)結(jié)構(gòu)
2.在深度為5的滿二叉樹中,葉子結(jié)點(diǎn)的個(gè)數(shù)為( )。
A.32
B.31
C.16
D.15
3.下列敘述中錯(cuò)誤的是( )。
A.線性表是由n個(gè)元素組成的一個(gè)有限序列
B.線性表是一種線性結(jié)構(gòu)
C.線性表的所有結(jié)點(diǎn)有且僅有一個(gè)前件和后件
D.線性表可以是空表
4.數(shù)據(jù)庫(kù)技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)的( )。
A.存儲(chǔ)問(wèn)題
B.共享問(wèn)題
C.安全問(wèn)題
D.保護(hù)問(wèn)題
5.在設(shè)計(jì)程序時(shí),應(yīng)采納的原則之一是( )。
A.不限制goto語(yǔ)句的使用
B.減少或取消注解行
C.程序越短越好
D.程序結(jié)構(gòu)應(yīng)有助于讀者理解
6.結(jié)構(gòu)化程序設(shè)計(jì)的核心和基礎(chǔ)是( )。
A.結(jié)構(gòu)化分析方法
B.結(jié)構(gòu)化設(shè)計(jì)方法
C.結(jié)構(gòu)化設(shè)計(jì)理論
D.結(jié)構(gòu)化編程方法
7.對(duì)下列二叉樹進(jìn)行中序遍歷的結(jié)果是( )。
A.ACBDFEG
B.ACBDFGE
C.ABDCGEF
D.FCADBEG
8.軟件設(shè)計(jì)中模塊劃分應(yīng)遵循的準(zhǔn)則是( )。
A.低內(nèi)聚低耦合
B.高內(nèi)聚低耦合
C.低內(nèi)聚高耦合
D.高內(nèi)聚高耦合
9.算法的有窮性是指( )。
A.算法程序的運(yùn)行時(shí)間是有限的
B.算法程序所處理的數(shù)據(jù)量是有限的
C.算法程序的長(zhǎng)度是有限的
D.算法只能被有限的用戶使用
10.有3個(gè)關(guān)系R、S和T如下:
由關(guān)系R和S通過(guò)運(yùn)算得到關(guān)系T,則所用的運(yùn)算為( )。
A.并
B.自然連接
C.笛卡兒積
D.交
11.破壞死鎖的4個(gè)必要條件之一就可以預(yù)防死鎖。假如規(guī)定一個(gè)進(jìn)程在請(qǐng)求新資源之前首先釋放已占有的資源則是破壞了( )條件。
A.互斥使用
B.部分分配
C.不可剝奪
D.環(huán)路等待
12.設(shè)有字符序列(Q,H,C,Y,P,A,M,S,R,D,F(xiàn),X),則新序列(F,H,C,D,P,A,M,Q,R,S,Y,X)是下列( )排序算法一趟掃描的結(jié)果。
A.起泡排序
B.初始步長(zhǎng)為4的希爾排序
C.二路歸并排序
D.以第一個(gè)元素為分界元素的快速排序
13.下列與算法有關(guān)的敘述中,不正確的是( )。
A.運(yùn)算是數(shù)據(jù)結(jié)構(gòu)的一個(gè)重要方面,運(yùn)算的實(shí)現(xiàn)步驟用算法來(lái)描述
B.算法是精確定義的一系列規(guī)則,它指出怎樣從給定的輸入信息經(jīng)過(guò)有限步驟產(chǎn)生所求的輸出信息
C.算法的設(shè)計(jì)采用由粗到細(xì),由抽象到具體的逐步求精的方法
D.對(duì)于算法的分析,指的是分析算法運(yùn)行所要占用的機(jī)器時(shí)間,即算法的時(shí)間代價(jià)
14.下列關(guān)于數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)的敘述中,正確的是( )。
A.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是數(shù)據(jù)間關(guān)系的抽象描述
B.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)器中的實(shí)現(xiàn)
C.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)分為線性結(jié)構(gòu)和非線性結(jié)構(gòu)
D.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)對(duì)數(shù)據(jù)的具體實(shí)現(xiàn)沒(méi)有影響
15.設(shè)有一個(gè)已按各元素的值排好序的順序表(長(zhǎng)度大于2),現(xiàn)分別用順序查找法和二分查找法查找與給定值k相等的元素,比較的次數(shù)分別是s和b,在查找不成功情況下s和b的關(guān)系是( )。
A.s=b
B.s>b
C.s D.s>=b
16.下列不屬于虛擬機(jī)執(zhí)行過(guò)程的特點(diǎn)的是( )。
A.多線程
B.動(dòng)態(tài)連接
C.異常處理
D.代碼安全檢查
17.下列說(shuō)法中,正確的一項(xiàng)是( )。
A.Java語(yǔ)言是以類為程序的基本單位的
B.Java語(yǔ)言是不分大小寫的
C.多行注釋語(yǔ)句必須以//開始
D.在Java語(yǔ)言中,類的源文件名和該類名可以不相同
18.下列關(guān)于實(shí)型變量書寫正確的是( )。
A.E3
B.2e0.3
C.1.2e3
D.1.2E0.3
19.下列與其他選項(xiàng)不相等的是( )。
A.15
B.0xF
C.015
D.0XF
20.設(shè)a=8,則表達(dá)式a>>>1的值是( )。
A.1
B.2
C.3
D.4
21.在Java中,所有類的根類是( )。
A.java.lang.Object
B.java.lang.Class
C.java.lang.String
D.java.lang.System
22.執(zhí)行下面程序段后,2值為( )。
int x=1,y=2,z=3;
z=z/(float)(x/y):
A.編譯無(wú)法通過(guò) B.6
C.3 D.2
23.int類型的取值范圍為( )。
A.-216~216-1
B.-231~231-1
C.-232~232-1
D.-264~264-1
24.下列說(shuō)法中,( )是正確的。
A.子類擁有的成員數(shù)目大于等于父類擁有的成員數(shù)目
B.父類代表的對(duì)象范圍比子類廣
C.子類要調(diào)用父類的方法,必須使用super關(guān)鍵字
D.一個(gè)Java類可以有多個(gè)父類
25.執(zhí)行下列程序之后,變量n的值為( )。
public class Exam{
public static void main(String[]args){
int y=2;
int z=3:
int n=4:
n=n+-y*z/n;
System.out.println(n);
}
}
A.3 B.-l
C.-l2 D.-3
26.在Java中能實(shí)現(xiàn)多重繼承效果的方式是( )。
A.內(nèi)部類
B.適配器
C.接口
D.同步
27.char類型的取值范圍是( )。
A.2的-7次方~2的7次方減1
B.O~2的16次方減1
C.負(fù)2的15次方~2的15次方減1
D.O~2的8次方減1
28.能夠支持javadoc命令的注釋語(yǔ)句是( )。
A./**…//
B./*…*/
C.//
D./**…*/
29.十進(jìn)制數(shù)16的十六進(jìn)制表示格式是( )。
A.0x10
B.0x16
C.0xA
D.016
30.int型public成員變量MAX_LENGTH,該值保持為常數(shù)100,則定義這個(gè)變量的語(yǔ)句是( )。
A.public int MAX LENGTH=100
B.final int MAX—LENGTH=100
C.public const int MAX_LENGTH=100
D.public final int MAX_LENGTH=100
31.Java對(duì)I/O訪問(wèn)所提供的同步處理機(jī)制是( )。
A.字節(jié)流
B.過(guò)濾流
C.字符流
D.壓縮文件流
32.請(qǐng)閱讀下面程序
public class ThreadTest{
public static void main(String args[])throws Ex-
ception{
int i=0;
Hello t=new Hello();
;
while(true){
System.Out.println("Good Morning"+i++):
if(i= =2&&t.isAlive()){
System.out.println("Main waiting for Hel-
lo!");
t.join();//等待t運(yùn)行結(jié)束
}
if(i= =5)break;}
}
}
class Hello extends Thread{
int l;
public void run(){
while(true)(
System.Out.println("Hell0"+i++);
if(i= =5)break;)))
為使該程序正確執(zhí)行,下畫線處的語(yǔ)句應(yīng)是( )。
A.t.sleep()
B.t.yield()
C.t.interrupt()
D.t.start()
33.下列敘述中,錯(cuò)誤的是( )。
A.Jbutton類和標(biāo)簽類可顯示圖標(biāo)和文本
B.Button類和標(biāo)簽類可顯示圖標(biāo)和文本
C.AWT構(gòu)件能直接添加到頂層容器中
D.Swing構(gòu)件不能直接添加到頂層容器中
34.下列敘述中,錯(cuò)誤的是( )。
A.Applet的默認(rèn)布局管理器是FlowLayout
B.JApplet中增加構(gòu)件是加到JApplet的內(nèi)容面板上,不是直接加到JApplet中
C.JApplet的內(nèi)容面板的默認(rèn)布局管理器是Border-Layout
D.JApplet的內(nèi)容面板的默認(rèn)布局管理器是FlowLay-out
35.下列敘述中,錯(cuò)誤的是( )。
A.Java中,方法的重載是指多個(gè)方法可以共享同一個(gè)名字
B.Java中,用abstract裝飾的類稱為抽象類,它不能實(shí)例化
C.Java中,接口是不包含成員變量和方法實(shí)現(xiàn)的抽象類
D.Java中,構(gòu)造方法可以有返回值
36.要表示表格的數(shù)據(jù),需要繼承類( )。
A.AbstraceTableModel
B.TableModel
C.JTable
D.TableModelable
37.下面程序的正確輸出是( )。
public class Hello
{
public static void main(String args[])
{
int count,xPos=25;
for(count=1;count<=10;count++)
{
if(count= =5)
Break;
system.Out.println(count);
xPos+=10:
}
}
}
A.1 2 3 4
B.1 3 4
C.編譯錯(cuò)誤
D.以上都不正確
38.在Applet生命周期中,下面方法中,在裝載Applet時(shí)被調(diào)用的是( )。
A.stop()
B.init()
C.start()
D.destroy()
39.JDBC是面向( )的。
A.過(guò)程
B.對(duì)象
C.應(yīng)用
D.用戶
40.J2SDK的下載中,下列( )可以進(jìn)入J2SE下載頁(yè)面。
A.進(jìn)入http://java.sum.com
B.單擊左側(cè)Download鏈接
C.單擊頁(yè)面中的Java 2 Platform,Standard Edition鏈接
D.單擊頁(yè)面中的J2SE l.4.2鏈接
二、基本操作題(共18分)
本題定義了一個(gè)方法add(),用于求兩個(gè)整形數(shù)的和。方法中有兩個(gè)整形參數(shù)a和b,方法體中計(jì)算a和b的和sum,并將結(jié)果返回。程序中調(diào)用add()方法求整數(shù)24和34的和,并將結(jié)果打印輸出。
public class javal{
public static void main(String[]args){
int a=24,b=34;
System.out.println(add(a,b));
}
public static int add( ){
;
sum—a+b;
;
}
}
三、簡(jiǎn)單應(yīng)用題(共24分)
本題中,主窗口有一個(gè)按鈕“顯示Dial09”,單擊該按鈕后顯示一個(gè)對(duì)話框,對(duì)話框的標(biāo)題是“Dial09”,其上有一個(gè)文字標(biāo)簽“歡迎學(xué)習(xí)Java.”,此時(shí)仍允許對(duì)原來(lái)窗口進(jìn)行操作,當(dāng)關(guān)閉新生成的對(duì)話框時(shí)退出程序。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class java2 extends Frame implements ActionLis-
tener{
public static void main(String args[]){
java2 f=new java2("java2");
Panel pan=new Panel();
f.init();
}
public java2(String str){
super(str);
}
public void init(){
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
setSize(200,200);
setLayout(new FlowLayout());
but=new Button("顯示Dialog");
add(but);
but.addActionListener(this);
dig=new Dialog(this,"Dialog", );
dig.setSize(100,50);
dig.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
;
}
});
dig.add("Center",new Label("歡迎學(xué)習(xí)Ja-
va."));
setVisible(true);
}
public void actionPerformed(ActionEvent e){
dig.setVisible(true);
}
private Dialog dig;
private Button but;
}
四、綜合應(yīng)用題(共18分)
本題的功能是監(jiān)聽(tīng)鼠標(biāo)的拖曳操作。窗口中有一個(gè)列表框,列表框中列出了當(dāng)前目錄的所有文件,鼠標(biāo)選中一個(gè)或多個(gè)文件后拖曳出窗口,此操作的功能是將拖曳的文件復(fù)制一份在拖曳的目的目錄下。
import java.awt.*;
import java.awt.datatransfer.*;
import java.awt.dnd.*;
import java.awt.event.*;
import java.io.*;
import java.util.*;
import javax.swing.*;
public class java3
{
public static void main(String[]args)
{
JFrame frame=new DragSourceFrame();
frame.setDefauhCloseOperation(JFrame.EXIT_
0N_CLoSE);
frame.show();
}
}
class DragSoureeFrame extends JFrame
{
public DragSourceFrame()
{
setTitle("java3");
setSize(WlDTH,HElGHT);
Container contentPane=getContentPane();
File f=new File(".").getabsoluteFile();
File[]files=f.listFiles();
model=new DefaultListModel();
for(int i=0;i try
{
model.addElement(files[i].getCanonicalFile());
}
catch(IOException exception)
{
JOptionPane.showMessageDialog(this,exeep-
tion);
}
fileList=new JList(model);
contentPane.add(new JScrollPane(fileList),
BorderLayout.CENTER);
contentPane.add(new JLabel("從列表中拖曳出文
件"),
BorderLayout.NoRTH);
DragSource dragSource=DragSource.getDefauh-
DragSource();
dragSource.createDefaultDragGestureRecognizer
(fileList,
DnDConstants. ACTION_COPY_0R_
MOVE,new
DragGestureListener()
{
public void dragGestureRecognized(
DragGestureEvent event)
{
draggedValues=fileList.getSelectedValues();
Transferable transferable
=new FiteListTransferable(draggedValues);
evenr.startDrag(null,transferable,
new FileListDragSourceListener());
}
});
}
private class FileListDragSourceListener imple-
ments DragSourceAdapter
{
public void dragDropEnd(DragSourceDropEvent e-
vent)
{
if(event.getDropSuccess())
{
int action=event.getDropAction();
if(action= =DnDConstants.ACTl0N MOVE)
{
for(int i=0;i model.removeElement(draggedValues[i]);
}
}
}
}
private JList fileList;
private DefauhListModel model;
private Object[]draggedValues;
private static final int WIDTH=300;
private static final int HEIGHT=200;
}
class FileListTransferable implements Transferable
{
public FileListTransferable(Object[]files)
{
fileList=new ArrayList(Arrays.asList(files));
}
public DataFlavor[]getTransferDataFlavors()
{
return flavors;
public boolean isDataFlavorSupported(DataFlavor
flavor)
{
return Arrays. asList(flavors), contains(flavor) ;
}
public Object getTransferData(DataFlavor flavor)
throws UnsupportedFlavorException
if(flavor, equals(DataFlavor, javaFileListFlavor) )
return fileList;
else if(flavor, equals(DataFlavor, stringFlavor))
return fileList, toString() ;
else
throw new UnsupportedFlavorException(flavor) ;
}
private static DataFlavor[] flavors =
{
DataFlavor. j avaFileListFlavor,
DataFlavor. stringFlavor
};
private java. util. List fileList;
一、選擇題
1.A?!窘馕觥烤€性表的存儲(chǔ)結(jié)構(gòu)有順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。
2.C。【解析】根據(jù)滿二叉樹的定義,一棵深度為k且有
2k-1個(gè)結(jié)點(diǎn)的二叉樹為滿二叉樹。滿二叉樹的葉子結(jié)點(diǎn)為最后一層的結(jié)點(diǎn)數(shù)。根據(jù)滿二叉樹的性質(zhì),在滿二叉樹的第i層上至多有2i-1個(gè)結(jié)點(diǎn)。因此深度為5的滿二叉樹的葉子結(jié)點(diǎn)數(shù)為25-1=16個(gè)。
3.C?!窘馕觥烤€性表是一種線性結(jié)構(gòu),由n(n≥0)個(gè)元素組成,所以線性表可以是空表。但是在線性表中,第一個(gè)結(jié)點(diǎn)沒(méi)有前驅(qū),最后一個(gè)結(jié)點(diǎn)沒(méi)有后繼,其他結(jié)點(diǎn)有且只有一個(gè)前驅(qū)和后繼,所以選項(xiàng)C是錯(cuò)誤的。
4.B?!窘馕觥吭跀?shù)據(jù)庫(kù)系統(tǒng)中,需要對(duì)數(shù)據(jù)進(jìn)行集合、統(tǒng)一的管理,以達(dá)到被多個(gè)應(yīng)用程序共享的目標(biāo)。
5.D。【解析】程序設(shè)計(jì)中,程序不要求長(zhǎng)度,以結(jié)構(gòu)清晰、易于理解為標(biāo)準(zhǔn),程序員可以添加注釋來(lái)助于理解,同時(shí)要盡量少用goto語(yǔ)句,否則會(huì)破壞程序的結(jié)構(gòu)。
6.C?!窘馕觥拷Y(jié)構(gòu)化程序設(shè)計(jì)的核心和基礎(chǔ)是結(jié)構(gòu)化設(shè)計(jì)理論,其中包括:結(jié)構(gòu)化分析方法、結(jié)構(gòu)化設(shè)計(jì)方法和結(jié)構(gòu)化編程方法。
7.A?!窘馕觥慷鏄涞谋闅v有3種:前序、中序和后序。中序遍歷首先遍歷左子樹或左子結(jié)點(diǎn),然后訪問(wèn)根結(jié)點(diǎn),最后遍歷右子樹或右子結(jié)點(diǎn)。分析本題二叉樹,對(duì)其進(jìn)行中序遍歷,結(jié)果為ACBDFEG。
8.B。【解析】耦合性和內(nèi)聚性是模塊獨(dú)立性的兩個(gè)定性標(biāo)準(zhǔn),軟件設(shè)計(jì)應(yīng)該遵循高內(nèi)聚低耦合的準(zhǔn)則。
9.A?!窘馕觥克惴ǖ挠懈F性是指算法必須在執(zhí)行有限的步驟后終止。
10.D?!窘馕觥筷P(guān)系R與S經(jīng)過(guò)交運(yùn)算后所得到的關(guān)系是由那些既在R內(nèi)又在S內(nèi)的有序組組成的。記作R∩S。
11.B?!窘馕觥咳粢粋€(gè)進(jìn)程請(qǐng)求新資源之前首先釋放已占有的資源,這破壞了部分分配條件。
12.D?!窘馕觥扛鶕?jù)快速排序的算法,新序列(F,H,C,D,P,A,M,Q,R,S,Y,X)為字符序列(Q,H,C,Y,P,A,M,s,R,D,F(xiàn),x)經(jīng)過(guò)快速排序的算法第一趟掃描后的結(jié)果。
13.D?!窘馕觥克惴ㄊ且幌盗薪鉀Q問(wèn)題的清晰指令,也就是說(shuō),能夠?qū)σ欢ㄒ?guī)范的輸入,在有間內(nèi)獲得所要求的輸出。算法常常含有重復(fù)的步驟和一些比較或邏輯判斷。如果一個(gè)算法有缺陷,或不適合于某個(gè)問(wèn)題,執(zhí)行這個(gè)算法將不會(huì)解決這個(gè)問(wèn)題。不同的算法可能用不同的時(shí)間、空間或效率來(lái)完成同樣的任務(wù)。一個(gè)算法的優(yōu)劣可以用空間復(fù)雜度與時(shí)間復(fù)雜度來(lái)衡量,也就是算法分析,因此選項(xiàng)D錯(cuò)誤。算法設(shè)計(jì)一般采用由粗到細(xì)、由抽象到具體的初步求精的方法。
14.B?!窘馕觥繑?shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)器中的實(shí)現(xiàn)。為了全面表示一個(gè)邏輯結(jié)構(gòu),它在存儲(chǔ)器中的影響包括數(shù)據(jù)元素自身值的表示和數(shù)據(jù)元素的表示兩方面。
15.B?!窘馕觥宽樞虿檎业幕舅枷胧牵簭谋淼囊欢碎_始,順序掃描線性表,依次將掃描到結(jié)點(diǎn)的關(guān)鍵字和給定值k進(jìn)行比較,若當(dāng)前掃描到結(jié)點(diǎn)的關(guān)鍵字與k相等,則查找成功;若掃描結(jié)束后,仍未找到關(guān)鍵字等于k的結(jié)點(diǎn),則查找失敗。二分查找法是一種效率較高的查找方法,要求線性表是有序表?;舅枷胧牵菏紫葘⒋榈膋值和有序表R[0]~R[n-1]的中間位置mid上的結(jié)點(diǎn)的關(guān)鍵字進(jìn)行比較,若相等,則查找完成;否則,若R[mid].key>k,則說(shuō)明待查找的結(jié)點(diǎn)只可能在左子表R[0]~R[mid-1]中,我們只需在左子表中繼續(xù)進(jìn)行折半查找,若R[mid].key 16.D。【解析】本題考查虛擬機(jī)執(zhí)行過(guò)程的特點(diǎn)。Java虛擬機(jī)是編譯器生成的字節(jié)碼,不用考慮具體的硬件環(huán)境,實(shí)現(xiàn)一次編寫,隨處運(yùn)行,實(shí)現(xiàn)其可移植性。虛擬機(jī)執(zhí)行過(guò)程的特點(diǎn)有:多線程、動(dòng)態(tài)連接、異常處理。代碼安全檢查是Java語(yǔ)言的一個(gè)突出特點(diǎn),但不屬于虛擬機(jī)執(zhí)行過(guò)程特點(diǎn)。
17.A?!窘馕觥勘绢}考查考生對(duì)Java語(yǔ)言概念的理解,屬于考試重點(diǎn)內(nèi)容,歷次考試都有相關(guān)內(nèi)容,應(yīng)該理解這些基本概念。Java語(yǔ)言是分大小寫的,這一點(diǎn)在初學(xué)Java時(shí)需要特別注意,這一點(diǎn)與C語(yǔ)言有所不同,B選項(xiàng)錯(cuò)誤。以//開始的應(yīng)該是單行的注釋語(yǔ)句,因此選項(xiàng)C錯(cuò)誤。Java中有三類注釋語(yǔ)句:文檔注釋/**…*/,被javadoc處理,可以建立類的一個(gè)外部說(shuō)明性文件;C語(yǔ)言注釋風(fēng)格/*…*/,用于去掉當(dāng)前不再使用但仍想保留的代碼等;單行注釋//,格式上要求注釋符//后必須緊跟一個(gè)空格,然后才是注釋信患。Java程序源文件名必須和public類名相同,否則編譯出錯(cuò),因此選項(xiàng)D錯(cuò)誤。只有選項(xiàng)A說(shuō)法正確。
18.C?!窘馕觥勘绢}考查實(shí)型變量科學(xué)計(jì)算格式的書寫。在科學(xué)計(jì)算格式中,e或E是指數(shù)符,要求在e/E之前必須有數(shù)字,選項(xiàng)A錯(cuò)誤。同時(shí)還要求在e/E之后必須是整數(shù),選項(xiàng)B和選項(xiàng)D錯(cuò)誤。雖然題目非常簡(jiǎn)單,但是不容易正確回答。正確答案為選項(xiàng)C。
19.C?!窘馕觥勘绢}考查Java語(yǔ)言中的進(jìn)制換算。考生首先要清楚各種進(jìn)制的表示方法,整型常量有3種書寫格式:十進(jìn)制整數(shù),如156,-230,345;八進(jìn)制整數(shù):以0開頭,如012表示十進(jìn)制的l0;十六進(jìn)制整數(shù):以0x或0X開頭,如0X123表示十進(jìn)制數(shù)291。選項(xiàng)A是十進(jìn)制的15,選項(xiàng)B和選項(xiàng)D都是十六進(jìn)制中的F相當(dāng)于十進(jìn)制的15,選項(xiàng)C為八進(jìn)制,以0開頭,此處Ol5相當(dāng)于十進(jìn)制的13,與其他選項(xiàng)不同。
20.D。【解析】本題考查考生對(duì)位運(yùn)算符中無(wú)符號(hào)右移運(yùn)算符的掌握。無(wú)符號(hào)右移運(yùn)算符>>>,也叫邏輯右移,用于將一個(gè)數(shù)的各二進(jìn)制位全部無(wú)符號(hào)右移若干位,與運(yùn)算符>>不同的是左補(bǔ)0,而>>則是位移入原來(lái)高位的值。在本題中,8的二進(jìn)制表示是1000,右移一位后變成了0100,對(duì)應(yīng)的十進(jìn)制數(shù)是4??梢?jiàn),正確答案為選項(xiàng)D。
21.A?!窘馕觥勘绢}考查考生對(duì)Java類的掌握。在Java中java.lang包封裝著所有編程應(yīng)用的基本類。Object是所有類的根,它所包含的屬性和方法被所有類集成;Class類是由編譯器自動(dòng)生成對(duì)象的一個(gè)特殊類,它伴隨每個(gè)類;Strin9是字符串常量的類;System類是一個(gè)final類,所有的方法都用類變量來(lái)調(diào)用,即對(duì)System類不可能實(shí)例化,主要提供了標(biāo)準(zhǔn)輸入/輸出和系統(tǒng)環(huán)境信息的訪問(wèn)、設(shè)置.
22.A?!窘馕觥勘绢}考查Java的運(yùn)算和類型轉(zhuǎn)換。題目中變量x、y、z是int類型,由于括號(hào)的優(yōu)先級(jí)要高,所以語(yǔ)句(float)(x/y)的結(jié)果為0.0,分母已經(jīng)成為0,編譯肯定無(wú)法通過(guò)。另外,由于2是int型,不能將float型強(qiáng)制轉(zhuǎn)化為int型。
23.B?!窘馕觥勘绢}考查int類型的取值范圍。int類型是最常用的整數(shù)類型,存儲(chǔ)時(shí)占32位bit,能表示的范圍是-2的31次方至2的31次方-1,選項(xiàng)B正確。而short類型在存儲(chǔ)時(shí)占l6位bit,能表示的范圍是-2的16次方至2的16次方-1。long類型存儲(chǔ)時(shí)占64位bit,數(shù)據(jù)范圍是-2的64次方至2的64次方-1。正確答案為選項(xiàng)B。
24.B?!窘馕觥勘绢}考查對(duì)子類與父類關(guān)系的理解。對(duì)一個(gè)類的繼承也就是構(gòu)建了一個(gè)子類,子類繼承了父類的方法和狀態(tài),同時(shí)還可以向新類中增添新的方法和狀態(tài)。重點(diǎn)掌握兩點(diǎn):子類方法的訪問(wèn)權(quán)限比父類訪問(wèn)權(quán)限高,因此父類不能替代子類,但子類能夠代替父類,子類方法不能產(chǎn)生比父類更多的異常。子類擁有的成員數(shù)目小于等于父類擁有的成員數(shù)目,選項(xiàng)A說(shuō)法錯(cuò)誤;父類代表的對(duì)象范圍比子類廣,選項(xiàng)B說(shuō)法正確;子類要調(diào)用父類的方法,可以使用super關(guān)鍵字,也可以將父類的方法進(jìn)行重寫,選項(xiàng)C說(shuō)法錯(cuò)誤。在Java中一個(gè)類只能有一個(gè)父類,選項(xiàng)D說(shuō)法錯(cuò)誤。
25.A?!窘馕觥勘绢}考查Java中表達(dá)式的運(yùn)算。程序段main()方法中的前3行是基本的賦值語(yǔ)句,第4行是算術(shù)運(yùn)算語(yǔ)句,該語(yǔ)句執(zhí)行的過(guò)程是:首先是對(duì)Y取負(fù)值,得到-2,然后乘以2得到-6,再除以n得到-1,最后和n做加法得到3,從而根據(jù)賦值運(yùn)算將3賦值給變量n。
26.C。【解析】本題考查Java中多重繼承的概念。首先要區(qū)分選項(xiàng)中各個(gè)概念。內(nèi)部類是在一個(gè)類中的內(nèi)部嵌套定義的類,主要用來(lái)生成事件適配器。適配器(Adapter)定義一個(gè)包裝類,包裝有不兼容接口的對(duì)象。這個(gè)包裝類指的就是適配器,它包裝的對(duì)象就是適配者(Adaptee),適配器提供客戶類需要的接口。接口是一種只含有抽象方法或常量的一種特殊的抽象類,因?yàn)榻涌诓话ㄈ魏螌?shí)現(xiàn),所以與存儲(chǔ)空間沒(méi)有任何關(guān)系,將多個(gè)接口合并,即多重繼承就可以很容易實(shí)現(xiàn),選項(xiàng)C正確。同步主要用在多線程程序設(shè)計(jì)中。
27.B?!窘馕觥勘绢}考查Java中數(shù)據(jù)類型的取值范圍。應(yīng)該掌握常用的數(shù)據(jù)類型的取值范圍,char類型在內(nèi)存中占16位,取值范圍是0~65535也就是O~2的16次方減1,選項(xiàng)B正確。
28.D?!窘馕觥勘绢}考查Java中的注釋語(yǔ)句。注釋是程序設(shè)計(jì)的重要組成部分,應(yīng)熟練掌握。Java中有三類注釋語(yǔ)句:文檔注釋/**…*/,被javadoc處理,可以建立類的
一個(gè)外部說(shuō)明性文件,所以本題正確答案是選項(xiàng)D;C語(yǔ)言注釋風(fēng)格/*…*/,用于去掉當(dāng)前不再使用但仍想保留的代碼等;單行注釋//,格式上要求注釋符//后必須緊跟一個(gè)空格,然后才是注釋信息。
29.A。【解析】本題考查Java語(yǔ)言中的進(jìn)制換算。首先要清楚各種進(jìn)制的表示方法。整型常量有3種書寫格式:十進(jìn)制整數(shù),如156,-230,345;八進(jìn)制整數(shù),以0開頭,如012表示十進(jìn)制的l0;十六進(jìn)制整數(shù),以0x或OX開頭,如0X123表示十進(jìn)制數(shù)291。十進(jìn)制數(shù)16相當(dāng)于十六進(jìn)制的10,所以選項(xiàng)A正確。
30.D?!窘馕觥勘绢}考查Java中變量的聲明。選項(xiàng)A雖然按照題目要求定義了一個(gè)變量,但沒(méi)有滿足保持為常數(shù)的要求,該變量可以被改變;選項(xiàng)B沒(méi)有滿足題目要求的public成員變量;選項(xiàng)C與C語(yǔ)言混淆,const是C語(yǔ)言用來(lái)定義常值變量的關(guān)鍵字;Java中定義常值變量使用的是final屬性,說(shuō)明該值賦值以后永不改變,所以選項(xiàng)D為正確答案。
31.B。【解析】本題考查Java I/O流中的過(guò)濾流。過(guò)濾流是Java對(duì)I/O訪問(wèn)提供的同步處理機(jī)制,保證某時(shí)刻只有一個(gè)線程訪問(wèn)一個(gè)I/O流。過(guò)濾流是FilterInputStream和FiherOutputStream。因此,本題的正確答案是選項(xiàng)B。
32.D。【解析】程序中通過(guò)繼承Thread類來(lái)創(chuàng)建線程,而Java中新創(chuàng)建的線程不會(huì)自動(dòng)運(yùn)行,必須調(diào)用線程的start()方法,才能運(yùn)行該線程。
33.B?!窘馕觥縎wing的按鈕上還可以同時(shí)顯示文字和圖標(biāo),甚至只有圖標(biāo)都是可以的,這樣就構(gòu)成了圖形按鈕。而AwT中的Button類不能顯示圖標(biāo),只能顯示文本。
34.D?!窘馕觥縁lowLayout布局管理器是Panel類和Applet類默認(rèn)的布局管理器。向JApplet中增加構(gòu)件,是把構(gòu)件添加到Japplet的內(nèi)容面板中,而不是直接添加到JApplet中。JApplet的內(nèi)容面板的默認(rèn)布局管理器是BorderLayout,而Applet默認(rèn)的布局管理器是FlowLayout。
35.D。【解析】構(gòu)造方法是一種特殊的方法,是為對(duì)象初始化操作編寫的方法,用它來(lái)定義對(duì)象的初始狀態(tài)。Java中的每個(gè)類都有構(gòu)造方法,它也是由方法名、參數(shù)和方法體組成的。構(gòu)造方法的名字必須與類名相同,并且構(gòu)造方法不返回任何數(shù)據(jù)。
36.A?!窘馕觥勘砀袷荢wing新增加的構(gòu)件,主要功能是把數(shù)據(jù)以二維表格的形式顯示出來(lái)。使用表格,依據(jù)M-V-C的思想,生成一個(gè)MyTableModel類型的對(duì)象來(lái)表示數(shù)據(jù),這個(gè)類是從AbstractTableModel類繼承來(lái)的。
37.A?!窘馕觥吭摮绦蚪?jīng)過(guò)編譯、運(yùn)行后,在屏幕上顯示:l 2 3 4。public class Hello中Hello為類名,public staticvoid main(String args[])有關(guān)參數(shù)的解釋如下:public表示該方法可以被任意代碼所調(diào)用,包括Java解釋器;static告訴編譯器,main()方法是一個(gè)類方法,可以通過(guò)類名直接調(diào)用,調(diào)用時(shí)不需要該類的實(shí)例對(duì)象;void表示main()方法沒(méi)有返回值,這是非常重要的,因?yàn)镴ava類型檢查非常嚴(yán)格,包括檢查這些方法返回值的類型是否與聲明的一致;Stringargs[]聲明一個(gè)字符串類型的數(shù)組,它是命令行傳遞給main()方法的參數(shù),參數(shù)在命令行中出現(xiàn)在類名稱后面。包含main()方法的類(Hello為包含main()方法的類名)名稱必須與其文件名相同,也就是說(shuō),其文件名必須為Hello.java。 經(jīng)過(guò)編譯,在當(dāng)前文件夾下將出現(xiàn)一個(gè)Hello.class文件,這就是編譯后的字節(jié)碼文件。在程序段最后有兩個(gè)大括號(hào),分別說(shuō)明結(jié)束main()方法和Hello類。在本程序中由于有 count= =5這個(gè)條件判斷,因此當(dāng)count= =5時(shí),程序結(jié)束,輸出為1 2 3 4。
38.B?!窘馕觥吭贘ava Applet的生命周期中,共有4種狀態(tài)和4個(gè)方法:init()、start()、stop()和destroy()。在Applet裝載時(shí),由瀏覽器或appletviewer調(diào)用init()方法,通知該Applet已被加載到瀏覽器中,使Applet執(zhí)行一些基本初始化。
39.B?!窘馕觥縅DBC中定義了一組標(biāo)準(zhǔn)的應(yīng)用程序接口(API),這些APl是一種面向?qū)ο蟮姆庋b和重新設(shè)計(jì)的接口,使得用戶能夠編寫不依賴于數(shù)據(jù)庫(kù)廠商的數(shù)據(jù)庫(kù)應(yīng)用程序。
40.C?!窘馕觥縅2SDK的下載按下列步驟進(jìn)行操作:①進(jìn)入http://java.sun.com;②單擊左側(cè)Download鏈接,進(jìn)入下載頁(yè)面;③單擊頁(yè)面中的Java 2 Platform,StandardEdition鏈接,進(jìn)入J2SE下載頁(yè)面;④單擊頁(yè)面中J2SE l.4.2鏈接,進(jìn)入J2SEl.4.2下載頁(yè)面;⑤找到Download J2SE v1.4.2_02欄目,在其下找到Windows offline Installation類別,其右有兩個(gè)下載選項(xiàng),一個(gè)是JRE,一個(gè)是"SDK",單擊SDK選項(xiàng)下面的download,進(jìn)入J2SDK-1_4_2_02-win-dows-i586.exe文件的下載頁(yè)面;⑥選擇accept,接受SUN的協(xié)議;⑦單擊頁(yè)面中的Downloadj2sdk-1_4_2_02-win-dows.i586.P.exe下載鏈接,自動(dòng)進(jìn)行瀏覽器下載,也可使用下載工具進(jìn)行下載。
二、基本操作題
第1處:int a,int b
第2處:int sum
第3處:return sum
【解析】第1處是add方法的兩個(gè)整型的形參;第2處是聲明一個(gè)整型的變量sum;第3處是求得sum值后,返回sum。
三、簡(jiǎn)單應(yīng)用題
第1處:flash
第2處:System.exit(0)
【解析】第1處是作為Dialog對(duì)話框的參數(shù),第2處表示系統(tǒng)關(guān)閉退出整個(gè)應(yīng)用程序,參數(shù)0表示正常關(guān)閉。
四、綜合應(yīng)用題
第1處:File f—new File(".").getAbsoluteFile()
第2處:int i=0;i 第3處:private class FileListDragSoureeListener ex-
tends DragSourceAdapter
【解析】第1處是通過(guò)絕對(duì)路徑創(chuàng)建一個(gè)File對(duì)象f;第2處是files中f文件所在目錄下的所有文件名列表,此處就是遍歷這些文件名;第3處是定義了一個(gè)FileListDragSoureeListener類繼承用于接收拖動(dòng)源事件的抽象適配器類 DragSoureeAdapter。
一、選擇題(每小題1分,共40小題,共40分)
1.常采用的兩種存儲(chǔ)結(jié)構(gòu)是( )。
A.順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
B.散列方法和索引方式
C.鏈表存儲(chǔ)結(jié)構(gòu)和數(shù)組
D.線性存儲(chǔ)結(jié)構(gòu)和非線性存儲(chǔ)結(jié)構(gòu)
2.在深度為5的滿二叉樹中,葉子結(jié)點(diǎn)的個(gè)數(shù)為( )。
A.32
B.31
C.16
D.15
3.下列敘述中錯(cuò)誤的是( )。
A.線性表是由n個(gè)元素組成的一個(gè)有限序列
B.線性表是一種線性結(jié)構(gòu)
C.線性表的所有結(jié)點(diǎn)有且僅有一個(gè)前件和后件
D.線性表可以是空表
4.數(shù)據(jù)庫(kù)技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)的( )。
A.存儲(chǔ)問(wèn)題
B.共享問(wèn)題
C.安全問(wèn)題
D.保護(hù)問(wèn)題
5.在設(shè)計(jì)程序時(shí),應(yīng)采納的原則之一是( )。
A.不限制goto語(yǔ)句的使用
B.減少或取消注解行
C.程序越短越好
D.程序結(jié)構(gòu)應(yīng)有助于讀者理解
6.結(jié)構(gòu)化程序設(shè)計(jì)的核心和基礎(chǔ)是( )。
A.結(jié)構(gòu)化分析方法
B.結(jié)構(gòu)化設(shè)計(jì)方法
C.結(jié)構(gòu)化設(shè)計(jì)理論
D.結(jié)構(gòu)化編程方法
7.對(duì)下列二叉樹進(jìn)行中序遍歷的結(jié)果是( )。
A.ACBDFEG
B.ACBDFGE
C.ABDCGEF
D.FCADBEG
8.軟件設(shè)計(jì)中模塊劃分應(yīng)遵循的準(zhǔn)則是( )。
A.低內(nèi)聚低耦合
B.高內(nèi)聚低耦合
C.低內(nèi)聚高耦合
D.高內(nèi)聚高耦合
9.算法的有窮性是指( )。
A.算法程序的運(yùn)行時(shí)間是有限的
B.算法程序所處理的數(shù)據(jù)量是有限的
C.算法程序的長(zhǎng)度是有限的
D.算法只能被有限的用戶使用
10.有3個(gè)關(guān)系R、S和T如下:
由關(guān)系R和S通過(guò)運(yùn)算得到關(guān)系T,則所用的運(yùn)算為( )。
A.并
B.自然連接
C.笛卡兒積
D.交
11.破壞死鎖的4個(gè)必要條件之一就可以預(yù)防死鎖。假如規(guī)定一個(gè)進(jìn)程在請(qǐng)求新資源之前首先釋放已占有的資源則是破壞了( )條件。
A.互斥使用
B.部分分配
C.不可剝奪
D.環(huán)路等待
12.設(shè)有字符序列(Q,H,C,Y,P,A,M,S,R,D,F(xiàn),X),則新序列(F,H,C,D,P,A,M,Q,R,S,Y,X)是下列( )排序算法一趟掃描的結(jié)果。
A.起泡排序
B.初始步長(zhǎng)為4的希爾排序
C.二路歸并排序
D.以第一個(gè)元素為分界元素的快速排序
13.下列與算法有關(guān)的敘述中,不正確的是( )。
A.運(yùn)算是數(shù)據(jù)結(jié)構(gòu)的一個(gè)重要方面,運(yùn)算的實(shí)現(xiàn)步驟用算法來(lái)描述
B.算法是精確定義的一系列規(guī)則,它指出怎樣從給定的輸入信息經(jīng)過(guò)有限步驟產(chǎn)生所求的輸出信息
C.算法的設(shè)計(jì)采用由粗到細(xì),由抽象到具體的逐步求精的方法
D.對(duì)于算法的分析,指的是分析算法運(yùn)行所要占用的機(jī)器時(shí)間,即算法的時(shí)間代價(jià)
14.下列關(guān)于數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)的敘述中,正確的是( )。
A.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是數(shù)據(jù)間關(guān)系的抽象描述
B.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)器中的實(shí)現(xiàn)
C.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)分為線性結(jié)構(gòu)和非線性結(jié)構(gòu)
D.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)對(duì)數(shù)據(jù)的具體實(shí)現(xiàn)沒(méi)有影響
15.設(shè)有一個(gè)已按各元素的值排好序的順序表(長(zhǎng)度大于2),現(xiàn)分別用順序查找法和二分查找法查找與給定值k相等的元素,比較的次數(shù)分別是s和b,在查找不成功情況下s和b的關(guān)系是( )。
A.s=b
B.s>b
C.s D.s>=b
16.下列不屬于虛擬機(jī)執(zhí)行過(guò)程的特點(diǎn)的是( )。
A.多線程
B.動(dòng)態(tài)連接
C.異常處理
D.代碼安全檢查
17.下列說(shuō)法中,正確的一項(xiàng)是( )。
A.Java語(yǔ)言是以類為程序的基本單位的
B.Java語(yǔ)言是不分大小寫的
C.多行注釋語(yǔ)句必須以//開始
D.在Java語(yǔ)言中,類的源文件名和該類名可以不相同
18.下列關(guān)于實(shí)型變量書寫正確的是( )。
A.E3
B.2e0.3
C.1.2e3
D.1.2E0.3
19.下列與其他選項(xiàng)不相等的是( )。
A.15
B.0xF
C.015
D.0XF
20.設(shè)a=8,則表達(dá)式a>>>1的值是( )。
A.1
B.2
C.3
D.4
21.在Java中,所有類的根類是( )。
A.java.lang.Object
B.java.lang.Class
C.java.lang.String
D.java.lang.System
22.執(zhí)行下面程序段后,2值為( )。
int x=1,y=2,z=3;
z=z/(float)(x/y):
A.編譯無(wú)法通過(guò) B.6
C.3 D.2
23.int類型的取值范圍為( )。
A.-216~216-1
B.-231~231-1
C.-232~232-1
D.-264~264-1
24.下列說(shuō)法中,( )是正確的。
A.子類擁有的成員數(shù)目大于等于父類擁有的成員數(shù)目
B.父類代表的對(duì)象范圍比子類廣
C.子類要調(diào)用父類的方法,必須使用super關(guān)鍵字
D.一個(gè)Java類可以有多個(gè)父類
25.執(zhí)行下列程序之后,變量n的值為( )。
public class Exam{
public static void main(String[]args){
int y=2;
int z=3:
int n=4:
n=n+-y*z/n;
System.out.println(n);
}
}
A.3 B.-l
C.-l2 D.-3
26.在Java中能實(shí)現(xiàn)多重繼承效果的方式是( )。
A.內(nèi)部類
B.適配器
C.接口
D.同步
27.char類型的取值范圍是( )。
A.2的-7次方~2的7次方減1
B.O~2的16次方減1
C.負(fù)2的15次方~2的15次方減1
D.O~2的8次方減1
28.能夠支持javadoc命令的注釋語(yǔ)句是( )。
A./**…//
B./*…*/
C.//
D./**…*/
29.十進(jìn)制數(shù)16的十六進(jìn)制表示格式是( )。
A.0x10
B.0x16
C.0xA
D.016
30.int型public成員變量MAX_LENGTH,該值保持為常數(shù)100,則定義這個(gè)變量的語(yǔ)句是( )。
A.public int MAX LENGTH=100
B.final int MAX—LENGTH=100
C.public const int MAX_LENGTH=100
D.public final int MAX_LENGTH=100
31.Java對(duì)I/O訪問(wèn)所提供的同步處理機(jī)制是( )。
A.字節(jié)流
B.過(guò)濾流
C.字符流
D.壓縮文件流
32.請(qǐng)閱讀下面程序
public class ThreadTest{
public static void main(String args[])throws Ex-
ception{
int i=0;
Hello t=new Hello();
;
while(true){
System.Out.println("Good Morning"+i++):
if(i= =2&&t.isAlive()){
System.out.println("Main waiting for Hel-
lo!");
t.join();//等待t運(yùn)行結(jié)束
}
if(i= =5)break;}
}
}
class Hello extends Thread{
int l;
public void run(){
while(true)(
System.Out.println("Hell0"+i++);
if(i= =5)break;)))
為使該程序正確執(zhí)行,下畫線處的語(yǔ)句應(yīng)是( )。
A.t.sleep()
B.t.yield()
C.t.interrupt()
D.t.start()
33.下列敘述中,錯(cuò)誤的是( )。
A.Jbutton類和標(biāo)簽類可顯示圖標(biāo)和文本
B.Button類和標(biāo)簽類可顯示圖標(biāo)和文本
C.AWT構(gòu)件能直接添加到頂層容器中
D.Swing構(gòu)件不能直接添加到頂層容器中
34.下列敘述中,錯(cuò)誤的是( )。
A.Applet的默認(rèn)布局管理器是FlowLayout
B.JApplet中增加構(gòu)件是加到JApplet的內(nèi)容面板上,不是直接加到JApplet中
C.JApplet的內(nèi)容面板的默認(rèn)布局管理器是Border-Layout
D.JApplet的內(nèi)容面板的默認(rèn)布局管理器是FlowLay-out
35.下列敘述中,錯(cuò)誤的是( )。
A.Java中,方法的重載是指多個(gè)方法可以共享同一個(gè)名字
B.Java中,用abstract裝飾的類稱為抽象類,它不能實(shí)例化
C.Java中,接口是不包含成員變量和方法實(shí)現(xiàn)的抽象類
D.Java中,構(gòu)造方法可以有返回值
36.要表示表格的數(shù)據(jù),需要繼承類( )。
A.AbstraceTableModel
B.TableModel
C.JTable
D.TableModelable
37.下面程序的正確輸出是( )。
public class Hello
{
public static void main(String args[])
{
int count,xPos=25;
for(count=1;count<=10;count++)
{
if(count= =5)
Break;
system.Out.println(count);
xPos+=10:
}
}
}
A.1 2 3 4
B.1 3 4
C.編譯錯(cuò)誤
D.以上都不正確
38.在Applet生命周期中,下面方法中,在裝載Applet時(shí)被調(diào)用的是( )。
A.stop()
B.init()
C.start()
D.destroy()
39.JDBC是面向( )的。
A.過(guò)程
B.對(duì)象
C.應(yīng)用
D.用戶
40.J2SDK的下載中,下列( )可以進(jìn)入J2SE下載頁(yè)面。
A.進(jìn)入http://java.sum.com
B.單擊左側(cè)Download鏈接
C.單擊頁(yè)面中的Java 2 Platform,Standard Edition鏈接
D.單擊頁(yè)面中的J2SE l.4.2鏈接
二、基本操作題(共18分)
本題定義了一個(gè)方法add(),用于求兩個(gè)整形數(shù)的和。方法中有兩個(gè)整形參數(shù)a和b,方法體中計(jì)算a和b的和sum,并將結(jié)果返回。程序中調(diào)用add()方法求整數(shù)24和34的和,并將結(jié)果打印輸出。
public class javal{
public static void main(String[]args){
int a=24,b=34;
System.out.println(add(a,b));
}
public static int add( ){
;
sum—a+b;
;
}
}
三、簡(jiǎn)單應(yīng)用題(共24分)
本題中,主窗口有一個(gè)按鈕“顯示Dial09”,單擊該按鈕后顯示一個(gè)對(duì)話框,對(duì)話框的標(biāo)題是“Dial09”,其上有一個(gè)文字標(biāo)簽“歡迎學(xué)習(xí)Java.”,此時(shí)仍允許對(duì)原來(lái)窗口進(jìn)行操作,當(dāng)關(guān)閉新生成的對(duì)話框時(shí)退出程序。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class java2 extends Frame implements ActionLis-
tener{
public static void main(String args[]){
java2 f=new java2("java2");
Panel pan=new Panel();
f.init();
}
public java2(String str){
super(str);
}
public void init(){
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
setSize(200,200);
setLayout(new FlowLayout());
but=new Button("顯示Dialog");
add(but);
but.addActionListener(this);
dig=new Dialog(this,"Dialog", );
dig.setSize(100,50);
dig.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
;
}
});
dig.add("Center",new Label("歡迎學(xué)習(xí)Ja-
va."));
setVisible(true);
}
public void actionPerformed(ActionEvent e){
dig.setVisible(true);
}
private Dialog dig;
private Button but;
}
四、綜合應(yīng)用題(共18分)
本題的功能是監(jiān)聽(tīng)鼠標(biāo)的拖曳操作。窗口中有一個(gè)列表框,列表框中列出了當(dāng)前目錄的所有文件,鼠標(biāo)選中一個(gè)或多個(gè)文件后拖曳出窗口,此操作的功能是將拖曳的文件復(fù)制一份在拖曳的目的目錄下。
import java.awt.*;
import java.awt.datatransfer.*;
import java.awt.dnd.*;
import java.awt.event.*;
import java.io.*;
import java.util.*;
import javax.swing.*;
public class java3
{
public static void main(String[]args)
{
JFrame frame=new DragSourceFrame();
frame.setDefauhCloseOperation(JFrame.EXIT_
0N_CLoSE);
frame.show();
}
}
class DragSoureeFrame extends JFrame
{
public DragSourceFrame()
{
setTitle("java3");
setSize(WlDTH,HElGHT);
Container contentPane=getContentPane();
File f=new File(".").getabsoluteFile();
File[]files=f.listFiles();
model=new DefaultListModel();
for(int i=0;i try
{
model.addElement(files[i].getCanonicalFile());
}
catch(IOException exception)
{
JOptionPane.showMessageDialog(this,exeep-
tion);
}
fileList=new JList(model);
contentPane.add(new JScrollPane(fileList),
BorderLayout.CENTER);
contentPane.add(new JLabel("從列表中拖曳出文
件"),
BorderLayout.NoRTH);
DragSource dragSource=DragSource.getDefauh-
DragSource();
dragSource.createDefaultDragGestureRecognizer
(fileList,
DnDConstants. ACTION_COPY_0R_
MOVE,new
DragGestureListener()
{
public void dragGestureRecognized(
DragGestureEvent event)
{
draggedValues=fileList.getSelectedValues();
Transferable transferable
=new FiteListTransferable(draggedValues);
evenr.startDrag(null,transferable,
new FileListDragSourceListener());
}
});
}
private class FileListDragSourceListener imple-
ments DragSourceAdapter
{
public void dragDropEnd(DragSourceDropEvent e-
vent)
{
if(event.getDropSuccess())
{
int action=event.getDropAction();
if(action= =DnDConstants.ACTl0N MOVE)
{
for(int i=0;i model.removeElement(draggedValues[i]);
}
}
}
}
private JList fileList;
private DefauhListModel model;
private Object[]draggedValues;
private static final int WIDTH=300;
private static final int HEIGHT=200;
}
class FileListTransferable implements Transferable
{
public FileListTransferable(Object[]files)
{
fileList=new ArrayList(Arrays.asList(files));
}
public DataFlavor[]getTransferDataFlavors()
{
return flavors;
public boolean isDataFlavorSupported(DataFlavor
flavor)
{
return Arrays. asList(flavors), contains(flavor) ;
}
public Object getTransferData(DataFlavor flavor)
throws UnsupportedFlavorException
if(flavor, equals(DataFlavor, javaFileListFlavor) )
return fileList;
else if(flavor, equals(DataFlavor, stringFlavor))
return fileList, toString() ;
else
throw new UnsupportedFlavorException(flavor) ;
}
private static DataFlavor[] flavors =
{
DataFlavor. j avaFileListFlavor,
DataFlavor. stringFlavor
};
private java. util. List fileList;
一、選擇題
1.A?!窘馕觥烤€性表的存儲(chǔ)結(jié)構(gòu)有順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。
2.C。【解析】根據(jù)滿二叉樹的定義,一棵深度為k且有
2k-1個(gè)結(jié)點(diǎn)的二叉樹為滿二叉樹。滿二叉樹的葉子結(jié)點(diǎn)為最后一層的結(jié)點(diǎn)數(shù)。根據(jù)滿二叉樹的性質(zhì),在滿二叉樹的第i層上至多有2i-1個(gè)結(jié)點(diǎn)。因此深度為5的滿二叉樹的葉子結(jié)點(diǎn)數(shù)為25-1=16個(gè)。
3.C?!窘馕觥烤€性表是一種線性結(jié)構(gòu),由n(n≥0)個(gè)元素組成,所以線性表可以是空表。但是在線性表中,第一個(gè)結(jié)點(diǎn)沒(méi)有前驅(qū),最后一個(gè)結(jié)點(diǎn)沒(méi)有后繼,其他結(jié)點(diǎn)有且只有一個(gè)前驅(qū)和后繼,所以選項(xiàng)C是錯(cuò)誤的。
4.B?!窘馕觥吭跀?shù)據(jù)庫(kù)系統(tǒng)中,需要對(duì)數(shù)據(jù)進(jìn)行集合、統(tǒng)一的管理,以達(dá)到被多個(gè)應(yīng)用程序共享的目標(biāo)。
5.D。【解析】程序設(shè)計(jì)中,程序不要求長(zhǎng)度,以結(jié)構(gòu)清晰、易于理解為標(biāo)準(zhǔn),程序員可以添加注釋來(lái)助于理解,同時(shí)要盡量少用goto語(yǔ)句,否則會(huì)破壞程序的結(jié)構(gòu)。
6.C?!窘馕觥拷Y(jié)構(gòu)化程序設(shè)計(jì)的核心和基礎(chǔ)是結(jié)構(gòu)化設(shè)計(jì)理論,其中包括:結(jié)構(gòu)化分析方法、結(jié)構(gòu)化設(shè)計(jì)方法和結(jié)構(gòu)化編程方法。
7.A?!窘馕觥慷鏄涞谋闅v有3種:前序、中序和后序。中序遍歷首先遍歷左子樹或左子結(jié)點(diǎn),然后訪問(wèn)根結(jié)點(diǎn),最后遍歷右子樹或右子結(jié)點(diǎn)。分析本題二叉樹,對(duì)其進(jìn)行中序遍歷,結(jié)果為ACBDFEG。
8.B。【解析】耦合性和內(nèi)聚性是模塊獨(dú)立性的兩個(gè)定性標(biāo)準(zhǔn),軟件設(shè)計(jì)應(yīng)該遵循高內(nèi)聚低耦合的準(zhǔn)則。
9.A?!窘馕觥克惴ǖ挠懈F性是指算法必須在執(zhí)行有限的步驟后終止。
10.D?!窘馕觥筷P(guān)系R與S經(jīng)過(guò)交運(yùn)算后所得到的關(guān)系是由那些既在R內(nèi)又在S內(nèi)的有序組組成的。記作R∩S。
11.B?!窘馕觥咳粢粋€(gè)進(jìn)程請(qǐng)求新資源之前首先釋放已占有的資源,這破壞了部分分配條件。
12.D?!窘馕觥扛鶕?jù)快速排序的算法,新序列(F,H,C,D,P,A,M,Q,R,S,Y,X)為字符序列(Q,H,C,Y,P,A,M,s,R,D,F(xiàn),x)經(jīng)過(guò)快速排序的算法第一趟掃描后的結(jié)果。
13.D?!窘馕觥克惴ㄊ且幌盗薪鉀Q問(wèn)題的清晰指令,也就是說(shuō),能夠?qū)σ欢ㄒ?guī)范的輸入,在有間內(nèi)獲得所要求的輸出。算法常常含有重復(fù)的步驟和一些比較或邏輯判斷。如果一個(gè)算法有缺陷,或不適合于某個(gè)問(wèn)題,執(zhí)行這個(gè)算法將不會(huì)解決這個(gè)問(wèn)題。不同的算法可能用不同的時(shí)間、空間或效率來(lái)完成同樣的任務(wù)。一個(gè)算法的優(yōu)劣可以用空間復(fù)雜度與時(shí)間復(fù)雜度來(lái)衡量,也就是算法分析,因此選項(xiàng)D錯(cuò)誤。算法設(shè)計(jì)一般采用由粗到細(xì)、由抽象到具體的初步求精的方法。
14.B?!窘馕觥繑?shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)器中的實(shí)現(xiàn)。為了全面表示一個(gè)邏輯結(jié)構(gòu),它在存儲(chǔ)器中的影響包括數(shù)據(jù)元素自身值的表示和數(shù)據(jù)元素的表示兩方面。
15.B?!窘馕觥宽樞虿檎业幕舅枷胧牵簭谋淼囊欢碎_始,順序掃描線性表,依次將掃描到結(jié)點(diǎn)的關(guān)鍵字和給定值k進(jìn)行比較,若當(dāng)前掃描到結(jié)點(diǎn)的關(guān)鍵字與k相等,則查找成功;若掃描結(jié)束后,仍未找到關(guān)鍵字等于k的結(jié)點(diǎn),則查找失敗。二分查找法是一種效率較高的查找方法,要求線性表是有序表?;舅枷胧牵菏紫葘⒋榈膋值和有序表R[0]~R[n-1]的中間位置mid上的結(jié)點(diǎn)的關(guān)鍵字進(jìn)行比較,若相等,則查找完成;否則,若R[mid].key>k,則說(shuō)明待查找的結(jié)點(diǎn)只可能在左子表R[0]~R[mid-1]中,我們只需在左子表中繼續(xù)進(jìn)行折半查找,若R[mid].key 16.D。【解析】本題考查虛擬機(jī)執(zhí)行過(guò)程的特點(diǎn)。Java虛擬機(jī)是編譯器生成的字節(jié)碼,不用考慮具體的硬件環(huán)境,實(shí)現(xiàn)一次編寫,隨處運(yùn)行,實(shí)現(xiàn)其可移植性。虛擬機(jī)執(zhí)行過(guò)程的特點(diǎn)有:多線程、動(dòng)態(tài)連接、異常處理。代碼安全檢查是Java語(yǔ)言的一個(gè)突出特點(diǎn),但不屬于虛擬機(jī)執(zhí)行過(guò)程特點(diǎn)。
17.A?!窘馕觥勘绢}考查考生對(duì)Java語(yǔ)言概念的理解,屬于考試重點(diǎn)內(nèi)容,歷次考試都有相關(guān)內(nèi)容,應(yīng)該理解這些基本概念。Java語(yǔ)言是分大小寫的,這一點(diǎn)在初學(xué)Java時(shí)需要特別注意,這一點(diǎn)與C語(yǔ)言有所不同,B選項(xiàng)錯(cuò)誤。以//開始的應(yīng)該是單行的注釋語(yǔ)句,因此選項(xiàng)C錯(cuò)誤。Java中有三類注釋語(yǔ)句:文檔注釋/**…*/,被javadoc處理,可以建立類的一個(gè)外部說(shuō)明性文件;C語(yǔ)言注釋風(fēng)格/*…*/,用于去掉當(dāng)前不再使用但仍想保留的代碼等;單行注釋//,格式上要求注釋符//后必須緊跟一個(gè)空格,然后才是注釋信患。Java程序源文件名必須和public類名相同,否則編譯出錯(cuò),因此選項(xiàng)D錯(cuò)誤。只有選項(xiàng)A說(shuō)法正確。
18.C?!窘馕觥勘绢}考查實(shí)型變量科學(xué)計(jì)算格式的書寫。在科學(xué)計(jì)算格式中,e或E是指數(shù)符,要求在e/E之前必須有數(shù)字,選項(xiàng)A錯(cuò)誤。同時(shí)還要求在e/E之后必須是整數(shù),選項(xiàng)B和選項(xiàng)D錯(cuò)誤。雖然題目非常簡(jiǎn)單,但是不容易正確回答。正確答案為選項(xiàng)C。
19.C?!窘馕觥勘绢}考查Java語(yǔ)言中的進(jìn)制換算。考生首先要清楚各種進(jìn)制的表示方法,整型常量有3種書寫格式:十進(jìn)制整數(shù),如156,-230,345;八進(jìn)制整數(shù):以0開頭,如012表示十進(jìn)制的l0;十六進(jìn)制整數(shù):以0x或0X開頭,如0X123表示十進(jìn)制數(shù)291。選項(xiàng)A是十進(jìn)制的15,選項(xiàng)B和選項(xiàng)D都是十六進(jìn)制中的F相當(dāng)于十進(jìn)制的15,選項(xiàng)C為八進(jìn)制,以0開頭,此處Ol5相當(dāng)于十進(jìn)制的13,與其他選項(xiàng)不同。
20.D。【解析】本題考查考生對(duì)位運(yùn)算符中無(wú)符號(hào)右移運(yùn)算符的掌握。無(wú)符號(hào)右移運(yùn)算符>>>,也叫邏輯右移,用于將一個(gè)數(shù)的各二進(jìn)制位全部無(wú)符號(hào)右移若干位,與運(yùn)算符>>不同的是左補(bǔ)0,而>>則是位移入原來(lái)高位的值。在本題中,8的二進(jìn)制表示是1000,右移一位后變成了0100,對(duì)應(yīng)的十進(jìn)制數(shù)是4??梢?jiàn),正確答案為選項(xiàng)D。
21.A?!窘馕觥勘绢}考查考生對(duì)Java類的掌握。在Java中java.lang包封裝著所有編程應(yīng)用的基本類。Object是所有類的根,它所包含的屬性和方法被所有類集成;Class類是由編譯器自動(dòng)生成對(duì)象的一個(gè)特殊類,它伴隨每個(gè)類;Strin9是字符串常量的類;System類是一個(gè)final類,所有的方法都用類變量來(lái)調(diào)用,即對(duì)System類不可能實(shí)例化,主要提供了標(biāo)準(zhǔn)輸入/輸出和系統(tǒng)環(huán)境信息的訪問(wèn)、設(shè)置.
22.A?!窘馕觥勘绢}考查Java的運(yùn)算和類型轉(zhuǎn)換。題目中變量x、y、z是int類型,由于括號(hào)的優(yōu)先級(jí)要高,所以語(yǔ)句(float)(x/y)的結(jié)果為0.0,分母已經(jīng)成為0,編譯肯定無(wú)法通過(guò)。另外,由于2是int型,不能將float型強(qiáng)制轉(zhuǎn)化為int型。
23.B?!窘馕觥勘绢}考查int類型的取值范圍。int類型是最常用的整數(shù)類型,存儲(chǔ)時(shí)占32位bit,能表示的范圍是-2的31次方至2的31次方-1,選項(xiàng)B正確。而short類型在存儲(chǔ)時(shí)占l6位bit,能表示的范圍是-2的16次方至2的16次方-1。long類型存儲(chǔ)時(shí)占64位bit,數(shù)據(jù)范圍是-2的64次方至2的64次方-1。正確答案為選項(xiàng)B。
24.B?!窘馕觥勘绢}考查對(duì)子類與父類關(guān)系的理解。對(duì)一個(gè)類的繼承也就是構(gòu)建了一個(gè)子類,子類繼承了父類的方法和狀態(tài),同時(shí)還可以向新類中增添新的方法和狀態(tài)。重點(diǎn)掌握兩點(diǎn):子類方法的訪問(wèn)權(quán)限比父類訪問(wèn)權(quán)限高,因此父類不能替代子類,但子類能夠代替父類,子類方法不能產(chǎn)生比父類更多的異常。子類擁有的成員數(shù)目小于等于父類擁有的成員數(shù)目,選項(xiàng)A說(shuō)法錯(cuò)誤;父類代表的對(duì)象范圍比子類廣,選項(xiàng)B說(shuō)法正確;子類要調(diào)用父類的方法,可以使用super關(guān)鍵字,也可以將父類的方法進(jìn)行重寫,選項(xiàng)C說(shuō)法錯(cuò)誤。在Java中一個(gè)類只能有一個(gè)父類,選項(xiàng)D說(shuō)法錯(cuò)誤。
25.A?!窘馕觥勘绢}考查Java中表達(dá)式的運(yùn)算。程序段main()方法中的前3行是基本的賦值語(yǔ)句,第4行是算術(shù)運(yùn)算語(yǔ)句,該語(yǔ)句執(zhí)行的過(guò)程是:首先是對(duì)Y取負(fù)值,得到-2,然后乘以2得到-6,再除以n得到-1,最后和n做加法得到3,從而根據(jù)賦值運(yùn)算將3賦值給變量n。
26.C。【解析】本題考查Java中多重繼承的概念。首先要區(qū)分選項(xiàng)中各個(gè)概念。內(nèi)部類是在一個(gè)類中的內(nèi)部嵌套定義的類,主要用來(lái)生成事件適配器。適配器(Adapter)定義一個(gè)包裝類,包裝有不兼容接口的對(duì)象。這個(gè)包裝類指的就是適配器,它包裝的對(duì)象就是適配者(Adaptee),適配器提供客戶類需要的接口。接口是一種只含有抽象方法或常量的一種特殊的抽象類,因?yàn)榻涌诓话ㄈ魏螌?shí)現(xiàn),所以與存儲(chǔ)空間沒(méi)有任何關(guān)系,將多個(gè)接口合并,即多重繼承就可以很容易實(shí)現(xiàn),選項(xiàng)C正確。同步主要用在多線程程序設(shè)計(jì)中。
27.B?!窘馕觥勘绢}考查Java中數(shù)據(jù)類型的取值范圍。應(yīng)該掌握常用的數(shù)據(jù)類型的取值范圍,char類型在內(nèi)存中占16位,取值范圍是0~65535也就是O~2的16次方減1,選項(xiàng)B正確。
28.D?!窘馕觥勘绢}考查Java中的注釋語(yǔ)句。注釋是程序設(shè)計(jì)的重要組成部分,應(yīng)熟練掌握。Java中有三類注釋語(yǔ)句:文檔注釋/**…*/,被javadoc處理,可以建立類的
一個(gè)外部說(shuō)明性文件,所以本題正確答案是選項(xiàng)D;C語(yǔ)言注釋風(fēng)格/*…*/,用于去掉當(dāng)前不再使用但仍想保留的代碼等;單行注釋//,格式上要求注釋符//后必須緊跟一個(gè)空格,然后才是注釋信息。
29.A。【解析】本題考查Java語(yǔ)言中的進(jìn)制換算。首先要清楚各種進(jìn)制的表示方法。整型常量有3種書寫格式:十進(jìn)制整數(shù),如156,-230,345;八進(jìn)制整數(shù),以0開頭,如012表示十進(jìn)制的l0;十六進(jìn)制整數(shù),以0x或OX開頭,如0X123表示十進(jìn)制數(shù)291。十進(jìn)制數(shù)16相當(dāng)于十六進(jìn)制的10,所以選項(xiàng)A正確。
30.D?!窘馕觥勘绢}考查Java中變量的聲明。選項(xiàng)A雖然按照題目要求定義了一個(gè)變量,但沒(méi)有滿足保持為常數(shù)的要求,該變量可以被改變;選項(xiàng)B沒(méi)有滿足題目要求的public成員變量;選項(xiàng)C與C語(yǔ)言混淆,const是C語(yǔ)言用來(lái)定義常值變量的關(guān)鍵字;Java中定義常值變量使用的是final屬性,說(shuō)明該值賦值以后永不改變,所以選項(xiàng)D為正確答案。
31.B。【解析】本題考查Java I/O流中的過(guò)濾流。過(guò)濾流是Java對(duì)I/O訪問(wèn)提供的同步處理機(jī)制,保證某時(shí)刻只有一個(gè)線程訪問(wèn)一個(gè)I/O流。過(guò)濾流是FilterInputStream和FiherOutputStream。因此,本題的正確答案是選項(xiàng)B。
32.D。【解析】程序中通過(guò)繼承Thread類來(lái)創(chuàng)建線程,而Java中新創(chuàng)建的線程不會(huì)自動(dòng)運(yùn)行,必須調(diào)用線程的start()方法,才能運(yùn)行該線程。
33.B?!窘馕觥縎wing的按鈕上還可以同時(shí)顯示文字和圖標(biāo),甚至只有圖標(biāo)都是可以的,這樣就構(gòu)成了圖形按鈕。而AwT中的Button類不能顯示圖標(biāo),只能顯示文本。
34.D?!窘馕觥縁lowLayout布局管理器是Panel類和Applet類默認(rèn)的布局管理器。向JApplet中增加構(gòu)件,是把構(gòu)件添加到Japplet的內(nèi)容面板中,而不是直接添加到JApplet中。JApplet的內(nèi)容面板的默認(rèn)布局管理器是BorderLayout,而Applet默認(rèn)的布局管理器是FlowLayout。
35.D。【解析】構(gòu)造方法是一種特殊的方法,是為對(duì)象初始化操作編寫的方法,用它來(lái)定義對(duì)象的初始狀態(tài)。Java中的每個(gè)類都有構(gòu)造方法,它也是由方法名、參數(shù)和方法體組成的。構(gòu)造方法的名字必須與類名相同,并且構(gòu)造方法不返回任何數(shù)據(jù)。
36.A?!窘馕觥勘砀袷荢wing新增加的構(gòu)件,主要功能是把數(shù)據(jù)以二維表格的形式顯示出來(lái)。使用表格,依據(jù)M-V-C的思想,生成一個(gè)MyTableModel類型的對(duì)象來(lái)表示數(shù)據(jù),這個(gè)類是從AbstractTableModel類繼承來(lái)的。
37.A?!窘馕觥吭摮绦蚪?jīng)過(guò)編譯、運(yùn)行后,在屏幕上顯示:l 2 3 4。public class Hello中Hello為類名,public staticvoid main(String args[])有關(guān)參數(shù)的解釋如下:public表示該方法可以被任意代碼所調(diào)用,包括Java解釋器;static告訴編譯器,main()方法是一個(gè)類方法,可以通過(guò)類名直接調(diào)用,調(diào)用時(shí)不需要該類的實(shí)例對(duì)象;void表示main()方法沒(méi)有返回值,這是非常重要的,因?yàn)镴ava類型檢查非常嚴(yán)格,包括檢查這些方法返回值的類型是否與聲明的一致;Stringargs[]聲明一個(gè)字符串類型的數(shù)組,它是命令行傳遞給main()方法的參數(shù),參數(shù)在命令行中出現(xiàn)在類名稱后面。包含main()方法的類(Hello為包含main()方法的類名)名稱必須與其文件名相同,也就是說(shuō),其文件名必須為Hello.java。 經(jīng)過(guò)編譯,在當(dāng)前文件夾下將出現(xiàn)一個(gè)Hello.class文件,這就是編譯后的字節(jié)碼文件。在程序段最后有兩個(gè)大括號(hào),分別說(shuō)明結(jié)束main()方法和Hello類。在本程序中由于有 count= =5這個(gè)條件判斷,因此當(dāng)count= =5時(shí),程序結(jié)束,輸出為1 2 3 4。
38.B?!窘馕觥吭贘ava Applet的生命周期中,共有4種狀態(tài)和4個(gè)方法:init()、start()、stop()和destroy()。在Applet裝載時(shí),由瀏覽器或appletviewer調(diào)用init()方法,通知該Applet已被加載到瀏覽器中,使Applet執(zhí)行一些基本初始化。
39.B?!窘馕觥縅DBC中定義了一組標(biāo)準(zhǔn)的應(yīng)用程序接口(API),這些APl是一種面向?qū)ο蟮姆庋b和重新設(shè)計(jì)的接口,使得用戶能夠編寫不依賴于數(shù)據(jù)庫(kù)廠商的數(shù)據(jù)庫(kù)應(yīng)用程序。
40.C?!窘馕觥縅2SDK的下載按下列步驟進(jìn)行操作:①進(jìn)入http://java.sun.com;②單擊左側(cè)Download鏈接,進(jìn)入下載頁(yè)面;③單擊頁(yè)面中的Java 2 Platform,StandardEdition鏈接,進(jìn)入J2SE下載頁(yè)面;④單擊頁(yè)面中J2SE l.4.2鏈接,進(jìn)入J2SEl.4.2下載頁(yè)面;⑤找到Download J2SE v1.4.2_02欄目,在其下找到Windows offline Installation類別,其右有兩個(gè)下載選項(xiàng),一個(gè)是JRE,一個(gè)是"SDK",單擊SDK選項(xiàng)下面的download,進(jìn)入J2SDK-1_4_2_02-win-dows-i586.exe文件的下載頁(yè)面;⑥選擇accept,接受SUN的協(xié)議;⑦單擊頁(yè)面中的Downloadj2sdk-1_4_2_02-win-dows.i586.P.exe下載鏈接,自動(dòng)進(jìn)行瀏覽器下載,也可使用下載工具進(jìn)行下載。
二、基本操作題
第1處:int a,int b
第2處:int sum
第3處:return sum
【解析】第1處是add方法的兩個(gè)整型的形參;第2處是聲明一個(gè)整型的變量sum;第3處是求得sum值后,返回sum。
三、簡(jiǎn)單應(yīng)用題
第1處:flash
第2處:System.exit(0)
【解析】第1處是作為Dialog對(duì)話框的參數(shù),第2處表示系統(tǒng)關(guān)閉退出整個(gè)應(yīng)用程序,參數(shù)0表示正常關(guān)閉。
四、綜合應(yīng)用題
第1處:File f—new File(".").getAbsoluteFile()
第2處:int i=0;i 第3處:private class FileListDragSoureeListener ex-
tends DragSourceAdapter
【解析】第1處是通過(guò)絕對(duì)路徑創(chuàng)建一個(gè)File對(duì)象f;第2處是files中f文件所在目錄下的所有文件名列表,此處就是遍歷這些文件名;第3處是定義了一個(gè)FileListDragSoureeListener類繼承用于接收拖動(dòng)源事件的抽象適配器類 DragSoureeAdapter。