當前位置:才華齋>計算機>計算機二級>

2017年9月計算機二級考試JAVA復備考題

計算機二級 閱讀(4.11K)

計算機二級考試每年都會舉行兩次。你知道計算機二級考試JAVA科目都考哪些知識嗎?為了方便考生備考計算機二級考試JAVA 科目。下面是小編為大家帶來的計算機二級考試JAVA復備考題,歡迎閱讀。

2017年9月計算機二級考試JAVA復備考題

  備考題一:

1、Swing與AWT相比新增的佈局管理器是______。

A、CardLayout

B、GridLayout

C、GridBagLayout

D、BoxLayout

本題考查的是佈局管理器。

Swing繼續沿用AWT中的佈局管理器,包括FlowLayout、BorderLayout、CardLayout、GridLayout、GridBagLayout,另外Swing新增加了一個BoxLayout佈局管理器。

故本題答案為D。

2、下列對Java特性的敘述中,錯誤的是______。

A、在編寫Java子類時可以自由地增加新方法和屬性

B、Java的Applet要求程式設計首先建立JFrame視窗

C、Java語言用直譯器執行位元組碼

D、Java中的類一般都有自己的屬性和方法

本題考查的是Applet的概念。

Applet是能夠嵌入到HTML頁面中,並能夠在瀏覽器中執行的Java類,本身並不一定需要首先建立窗體,但可以使用JApple類來使用Swing構件。

Swing包中的JFrame類與建立視窗有關,是提供給java應用程式用來放置圖形使用者介面的一個容器。

JApplet類與JFrame一樣是頂層的Swing容器。包含Swing構件的Applet必須是JApplet的子類。

故本題答案為B。

3、閱讀下面求質數的程式

import .*;

public class MorePrimesTest{

public static void main(String[] args){

long[] primes=new long[20];

primes[0]=2L;

primes[1]=3L;

long number=5L;

outer:

for(int count=2;count  long limit=(long)(((double)number));

for(int i=1;i  if(number ______ primes[i]==0L){

continue outer;

}

}

primes[count++]=number;

}

for(int j=0;j  long n=primes[j];

tln(n);

}

}

}

在程式下劃線處填入的正確選項是______。

A、&

B、*

C、/

D、%

本題考查的是JAVA程式結構。

所謂質數或稱素數,就是一個正整數,除了本身和1以外並沒有任何其他因子。任何一個整數,可以寫成一串質數相乘的積。

程式中首先定義了包含有20個元素的長整型陣列,為陣列的第一,第二個元素賦值,並且還定義了一個長整型變數"long number=5L;",然後進入迴圈,該迴圈的作用是判斷當前變數number的值是否為質數,其中(double x)方法的作用是求x的平方根,而()方法的作用是求最小的整數但不小於本身(例如:(3.14)則返回4),在本次迴圈中,需要判斷變數number與primes[i]的取餘操作,如果變數number與小於自己的平方根取整且小於count的數取餘數為0,則跳出迴圈,將number的值寫入陣列中,當20個元素填滿後,程式依次輸出陣列元素。

故本題答案為D。

4、在Java中,"目錄"被看作是______。

A、檔案

B、流

C、資料

D、介面

本題考查的是目錄的概念。

目錄在Java中作為一種特殊檔案,即檔名的列表,通過類File所提供的方法,可得到檔案或目錄的描述資訊(包括名字、路徑、長度、可讀、可寫等),也可以生成新檔案、目錄、修改檔案和目錄,查詢檔案屬性,重新命名檔案或者刪除檔案。

故本題答案為A。

5、下列帶下劃線的識別符號符合Java命名約定的是______。

A、package

B、public class xyz

C、int I

D、void setCustomerName()

本題考查的是Java命名約定。

包的名字應該都是由小寫單片語成。它們全都是小寫字母,即便中間的單詞亦是如此,所以A選項錯誤。

類名的第一個字母一定要大寫,所以B選項錯誤;

變數的第一個字母應該為小寫,所以C選項錯誤;

與屬性相對應的get、set方法為:set(get)+屬性名,屬性名第一個字母為大寫,所以D選項正確。

故本題答案為D。

6、在Java語言中,被稱為記憶體分配的運算子是______。

A、new

B、instance of

C、[ ]

D、( )

本題考查的是JAVA關鍵字。

Java語言中,程式為物件動態分配記憶體。Java中記憶體分配的運算子是new。

故本題答案為A。

7、RandomAccessFile是包中的一個兼有輸入輸出功能的類。由於它是隨機訪問,所以檔案讀寫一個記錄的位置是______。

A、起始

B、終止

C、任意

D、固定

本題考查的是隨機檔案流。

檔案操作中經常需要的是隨機訪問,Java中的RandomAccessFile類提供了隨機訪問檔案的功能,它繼承了Object類,用DataInput和DataOutput介面來實現。介面中定義了從流中讀/寫基本型別的資料方法。因此也可以隨機讀入位元組資料檔案的記錄。

故本題答案為C。

8、下列語句中正確的是______。

A、tln(1+’1’);

B、int i=2+"2";

C、String s="on"+’one’;

D、byte b=257;

本題考查的是語句。

選項A是一個輸出語句,輸出結果是:字元1對應的ASCII碼的值(值為49)加1,即:50。

選項B語句中包含一個算術表示式,在算術表示式中,運算元只能是整型或浮點型資料,而表示式中的"2"為字串型別,所以該選項錯誤;

JAVA允許將字串用+號連線起來,但是選項C中one是用單引號括起來的,不能算字串,所以C選項錯誤;

選項D中,變數b的資料型別為byte型,只有8位,能表示資料的範圍為-128~+127,而257已超過byte型所能表示的資料範圍,故D選項錯誤。

故本題答案為A。

9、閱讀下面Applet程式

import g.*;

import .*;

public class SwingApplet extends JApplet{

JLabel l=new JLabel("This is a Swing Applet.");

public void init(){

______

}

}

在程式下劃線處填入正確選項是______。

A、Container contentPane=getContentPane(); (l);

B、JPanel contentPane=new JPanel(); (l);

C、(l);

D、add(l);

本題考查的是基於Swing的Applet使用者介面。

JApplet是頂層的Swing容器,其內部用一個隱含的根面板(JRootPanel)作為惟一的直接後代,而根面板中的內容面板(Content Pane)才是JApplet除選單條外所有構件的雙親。由於內容面板的存在,通常對JApplet新增構件有兩種方式:

1、用getContentPane()方法獲得JApplet的內容面板,再向內容面板中新增構件:

Container contentPane=getContentPane(); (SomeComponent);

2、建立一個JPanel之類的中間容器,把構件新增到容器中,再用setContentPane()方法把該容器置為JApplet的內容面板:

JPanel contentPane=new JPanel(); (SomeComponent); setContentPane(contentPanel);

故本題答案為A。

10、在Java中,物件流以______方式傳送和儲存。標準答案為:序列

本題考查的是物件的序列化。

Java中定義了兩種型別的位元組流ObjectInputStream和ObjectOutputStream支援物件的讀和寫,一般將這兩種稱為物件流。Java物件的讀、寫的過程被稱為序列化,物件流以序列方式傳送和儲存。

故本題答案為序列。

11、Swing中的元件往往採用MVC結構,MVC指的是Model、View和______。標準答案為:Controller 或 Control

本題考查的是MVC(Model-View-Controller)體系結構。

Swing勝過AWT的主要優勢在於MVC體系結構的普遍使用。MVC體系結構是"Model-View-Controller"的縮寫,中文翻譯為"模式-檢視-控制元件"。MVC應用程式總是由這三個部分組成。Event(事件)導致Controller改變Model或View,或者同時改變兩者。只要Controller改變了Models的資料或者屬性,所有依賴的`View都會自動更新。類似的,只要Controller改變了View,View會從潛在的Model中獲取資料來重新整理自己。

故本題答案為Controller。

12、下列方法中與Applet顯示無關的是______。

A、update()

B、draw()

C、repaint()

D、paint()

本題考查的是Applet顯示。

Applet顯示相關的3個方法:

1、paint()方法:Applet的paint()方法具體執行Applet的繪製,該方法定義如下:

public void paint(Graphics g)

paint()方法有一個引數g是Graphics類的例項,該例項物件由瀏覽器生成,它包含了Applet的圖形上下文資訊,通過它向Applet中顯示資訊,該物件相當於Applet的畫筆。在呼叫paint()方法時,由瀏覽器將該物件傳遞給paint()方法。

2、update()方法:

public void update(Graphics g)

用於更新Applet的顯示。該方法將首先清除背景,再呼叫paint()方法完成Applet的具體繪製。

3、repaint()方法:

public void repaint()

repaint()方法主要用於Applet的重新顯示,它呼叫update()方法實現對Applet的更新。

故本題答案為B。

  備考題二:

1、下列對Java語言的敘述中,錯誤的是______。

A、Java虛擬機器解釋執行位元組碼

B、JDK的庫檔案目錄是bin

C、Java的類是對具有相同行為物件的一種抽象

D、Java中的垃圾回收機制是一個系統級的執行緒

本題考查的是JDK目錄結構。

在JDK目錄結構中,lib目錄下存放的都是庫檔案,而bin目錄下有編譯器、直譯器和許多工具(如伺服器工具、IDL、package工具和jdb等)。

故本題答案為B。

2、下列不屬於Swing構件的是______。

A、JMenu

B、JApplet

C、JOptionPane

D、Panel

本題考查的是Swing構件和容器。

Swing中的大多數構件都是AWT構件名前面加了一個"J"。

Swing構件分類(從功能上):

1、頂層容器,JFrame、JApplet、JDialog和JWindow共4個。

2、中間容器,JPanel、JScrollPane、JSplitPane、JToolBar。

3、特殊容器,在GUI上起特殊作用的中間層,如JInternalFrame、JLayeredPane、JRootPane。

4、基本控制元件,實現人機互動的構件,如Jbutton、JComboBox、JList、JMenu、JSlider、JtextField。

5、不可編輯資訊的顯示,向用戶顯示不可編輯資訊的構件,例如JLabel、JProgressBar、ToolTip。

6、可編輯資訊的顯示,向用戶顯示能被編輯的格式化資訊的構件,如JColorChooser、JFileChooser、JFileChooser、JTable、JTextArea。

故本題答案為D。

3、下列概念中不包括任何實現,與儲存空間沒有任何關係的是______。

A、類

B、介面

C、抽象類

D、物件

本題考查的是介面。

介面是一種只含有抽象方法或常量的一種特殊的抽象類,因為介面不包括任何實現,所以與儲存空間沒有任何關係。

故本題答案為B。

4、閱讀下列程式碼;

public class Test{

String s="One World One Dream";

public static void main(String args[]){

tln(s);

}

}

其執行結果是______。

A、args

B、One World One Dream

C、s

D、編譯時出錯//除非建立Text類的物件

本題考查的是變數的宣告。

main方法是程式執行的入口,在本程式中main方法中的語句"tln(s);"無法呼叫在main方法外宣告的變數,所以編譯時出錯。

故本題答案為D。

5、閱讀下列程式碼段

ByteArrayOutputStream bout=new ByteArrayOutputStream();

ObjectOutputStream out=new ObjectOutputStream(bout);

eObject(this);

e();

以上程式碼段的作用是______。

A、將物件寫入記憶體

B、將物件寫入硬碟

C、將物件寫入光碟

D、將物件寫入檔案

本題考查的是Java中包含的輸入/輸出流的類。

ByteArrayOutputStream,位元組陣列輸出流。這個類將一個位元組陣列作為輸出流。這個用於儲存輸出資料的內部位元組陣列長度可以按照需要增長。

ObjectOutputStream既繼承了OutputStream抽象類,又實現了ObjectOutput介面,這是Java用介面技術代替雙重繼承例子,其構造方法引數是序列化了的物件。

在中,ByteArrayOutputStream是OutputStream的子類,可以直接訪問記憶體。用ByteArrayOutputStream可以向位元組陣列(緩衝區)寫入資料。

故本題答案為A。

6、閱讀下列程式碼段

abstract class Person{

public Person(String n){

name=n;

}

public ______ String getDescription();

public String getName(){

return name;

}

private String name;

}

在下劃線處應填入的修飾符是______。

A、static

B、abstract

C、protected

D、final

本題考查的是定義抽象類。

抽象類是專門設計來讓子類繼承的類。抽象類通常都包括一個或多個抽象方法(只有方法說明,沒有方法體),抽象類的子類必須完成其父類定義的每一個抽象方法,除非該子類也是抽象類。

抽象類是以abstract關鍵字開頭,抽象類定義具體形式:

abstract class 類名稱

{

成員變數;

方法(); //定義一般的方法

abstract 方法(); //定義抽象的方法

}

故本題答案為B。

7、當瀏覽器重新返回到包含Applet的頁面時呼叫的方法是______。

A、start()

B、init()

C、stop()

D、destroy()

本題考查的是Applet的生命週期。

當瀏覽器重新返回Applet所在頁面時,Applet類的start()方法將被呼叫。

故本題答案為A。

8、Swing中的內部框架類是______。標準答案為:JinternalFrame

本題考的是Swing構件和容器。

內部框架JInternalFrame就如同一個視窗在另一個視窗內部,屬於特殊容器中的一種,在GUI上起特殊作用的中間層。

故本題答案為JInternalFrame。

9、任何執行在Web頁面中的小應用程式都必須是Java中______類的子類。

標準答案為:Applet 或 et

本題考的是小應用程式概念。

Applet(小應用程式)是Java與Web相結合而引入的一種重要的Java應用形式,任何嵌入在Web頁面中或appletviewer中的Applet必須是Java中Applet類的子類。

故本題答案為Applet。

10、將E-R圖轉換為關係模式時,實體和聯絡都可以表示為______。

A、屬性

B、鍵

C、關係

D、域

將E-R圖轉換為關係模式時,實體和聯絡都可以表示成關係,E-R圖中屬性也可以轉換成關係的屬性。實體集也可以轉換成關係。

故本題答案為C。

11、資料庫應用系統中的核心問題是______。

A、資料庫設計

B、資料庫系統設計

C、資料庫維護

D、資料庫管理員培訓

資料庫應用系統是資料庫系統再加上應用軟體及應用介面這三者所組成,具體包括:資料庫、資料庫管理系統、資料庫管理員、硬體平臺、軟體平臺、應用軟體、應用介面。在資料庫應用系統中的一個核心問題就是設計一個能滿足使用者要求,效能良好的資料庫,這就是資料庫設計。所以選項A是正確的。

故本題答案為A。

12、支援子程式呼叫的資料結構是______。

A、棧

B、樹

C、佇列

D、二叉樹

子程式呼叫是一種層次關係,子程式呼叫功能模組,呼叫功能模組的個數也不確定,可以是一個,也可以是多個。選項A、C中元素之間是一種前後件關係,前後元素之間沒有層次之分,每個結點有一個前件也只有一個後件。二叉樹是一種很有用的非線性結構,二叉樹不同於樹形結構。二叉樹具有以下兩個特點:①非空二叉樹只有一個根結點;②每一個結點最多有兩棵子樹,且分別稱為該結點的左子樹與右子樹。選項D規定每個結點只能有兩個後件。在子程式呼叫中,呼叫的功能模組可以是多個,可以呼叫超過兩個功能模組。所以選項A、C、D均不正確。

故本題答案為B。