計算機二級

當前位置 /首頁/計算機/計算機二級/列表

2017計算機二級Java備考衝刺試題及答案

計算機二級考試難度不少,因此考生們要加強練習,下面是本站小編為同學們準備的2017年計算機二級Java備考衝刺試題及答案,助同學們備考計算機二級考試。

2017計算機二級Java備考衝刺試題及答案

1、以下 不是Java中有效的關鍵字。

A、const

B、NULL

C、false

D、this

本題考查的是Java的關鍵字。

Java中常量null,false,true,new,this,const,break都是小寫。

故本題答案為B。

2、關於被私有訪問控制符private修飾的成員變數,以下說法正確的是 。

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

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

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

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

本題考查的是成員變數的修飾符。

private修飾的變數說明變數為私有訪問。只能被該類自己訪問或呼叫,是對成員變數的高階保護。

故本題答案為C。

3、當檢索一個壓縮檔案時,首先要建立壓縮檔案輸入流物件。該物件 。

A、以選中的壓縮檔案為引數

B、以FileInputStream物件為引數

C、以InputStreamReader物件為引數

D、以BufferedReader物件為引數

本題考查的是壓縮檔案。

在包中提供了對壓縮檔案進行操作的能力。它是通過壓縮檔案輸入流與壓縮檔案輸出流來實現的,其分別繼承自InflaterInputStream與DeflaterOutputStream。在建立壓縮檔案輸入流時,其初始化引數是一個FileInputStream類的例項。

故本題答案為B。

4、計算機中的流是______ 。

A、流動的位元組

B、流動的物件

C、流動的檔案

D、流動的資料緩衝區

本題考查的是流的概念。

流,最早從C語言中引入的。其可以看成是一個流動的資料緩衝區。資料從資料來源方向經過緩衝區流向資料的目的地。在傳送的過程中,其傳送方式是序列的。在Java中的包中定義了Java中常見流的介面與類。其中包括兩個最基本的流的抽象類,它們分別是OutputStream與InputStream。其餘的流都分別從這兩個基本類中繼承而來。

故本題答案為D。

1、結構化程式設計主要強調的是______。

A、程式的規模

B、程式的易讀性

C、程式的執行效率

D、程式的可移植性

結構化程式設計主要強調的是結構化程式清晰易讀,可理解性好,程式設計師能夠進行逐步求精、程式證明和測試,以保證程式的正確性。

本題答案為B。

2、資料庫設計包括兩個方面的設計內容,它們是______。

A、概念設計和邏輯設計

B、模式設計和內模式設計

C、內模式設計和物理設計

D、結構特性設計和行為特性設計

資料庫設計可分為概念設計與邏輯設計。

資料庫概念設計的目的是分析資料間內在語義關聯,在此基礎上建立一個數據的抽象模型。

資料庫邏輯設計的主要工作是將ER圖轉換為指定的RDBMS中的關係模型。

本題答案是A。

3、為AB類的一個無形式引數無返回值的方法method書寫方法頭,使得使用類名AB作為字首就可以呼叫它,該方法頭的形式為______。

A、static void method( )

B、public void method( )

C、final void method( )

D、abstract void method( )

本題考查的是修飾符的含義。

1、public修飾的方法可被其它類訪問或引用。

2、abstract修飾的方法是抽象方法,抽象方法沒有方法體,要使用抽象方法,必須先實現此抽象方法。

3、final修飾的方法不能被繼承。

4、static修飾的方法為靜態方法,靜態方法不需要類的例項化就可以被類直接呼叫。

故要使得類名AB可以直接呼叫method()方法,則必須在method()前用static來修飾。

故本題答案為A。

4、偷聽介面的方法返回值的型別是______。

A、int

B、String

C、void

D、Object

本題考查的是偷聽。

每個事件都有自己的偷聽,偷聽本身是一種介面,該介面中的方法,返回值是void型別。當要為指定的類註冊偷聽時,就可以通過定在實現該介面的類中定義該方法,這樣可以在某個事件發生後,將會自動執行相應方法中的程式碼。

故本題答案為C。

5、outer: for(int i=0;i<3; i++)

inner: for(int j=0;j<2;j++)

{

if(j==1) continue outer;

tln(j+ "and "+i+";");

}

以上程式碼輸出是 。

A、0 and 0;0 and 1;0 and 2;

B、0 and 0;1 and 0;2 and 0;

C、1 and 0;1 and 1;1 and 2;

D、2 and 0;2 and 1;2 and 2;

本題考查的是多重迴圈。

首先介紹一下continue語句的功能:continue語句是跳過迴圈體中下面尚未執行的語句,回到迴圈體的`開始,繼續下一輪的迴圈。

本題程式執行過程如下:

i=0:

j=0 條件j==1不成立,輸出j和i,即0 and 0;

j=1 條件j==1成立,執行continue,跳過tln(j+ "and "+i+";");執行下一輪迴圈j=2;

j=2 條件j<2不滿足,退出內層迴圈,繼續外層迴圈。

i=1:

j=0 條件j==1不成立,輸出j和i,即0 and 1;

j=1 條件j==1成立,執行continue,跳過tln(j+ "and "+i+";");執行下一輪迴圈j=2;

j=2 條件j<2不滿足,退出內層迴圈,繼續外層迴圈。

i=2:

j=0 條件j==1不成立,輸出j和i,即0 and 2;

j=1 條件j==1成立,執行continue,跳過tln(j+ "and "+i+";");執行下一輪迴圈j=2;

j=2 條件j<2不滿足,退出內層迴圈,繼續外層迴圈。

i=3:條件i<3不滿足,結束。

故本題答案為A。

程式設計題

1、 編寫一個Java Application 程式,main程式輸入10個整數給陣列,通過函式getMinAndMax(int a[])得到這10個整數的最大值和最小值並輸出結果。

class App {

static void getMinAndMax(int a[]) {

int min,max;

min = max = a[0];

for(int i=1;i  if(a[i]>max)

max=a[i];

if(a[i]  min=a[i]; }

tln(“Array’Max Value:”+max);

tln(“Array’Min Value:”+min);

}

public static void main(String[] args) {

int arr[] = {4,6,72,9,14,3,8,23,56,32};

getMinAndMax(arr); } }

2、編寫一個完整的Java Application 程式。包含介面ShapeArea, Rectangle

類,Triangle類及Test類,具體要求如下:

⑴介面ShapeArea:

double getArea(  ):

求一個形狀的面積

double getPerimeter (  ):

求一個形狀的周長

⑵類 Rectangle:實現ShapeArea介面,並有以下屬性和方法:

① 屬性

width: double型別,表示矩形的長 height: double型別,表示矩形的高

② 方法

Rectangle(double w, double h):建構函式

toString(  )

方法 :輸出矩形的描述資訊,如“width=1.0,height=2.0, perimeter=6.0, area=2.0”

⑶類Triangle:實現ShapeArea介面,並有以下屬性和方法:

① 屬性

x,y,z: double型,表示三角形的三條邊

s: 周長的1/2(注:求三角形面積公式為))(  )((zsysxss,s=(x+y+z)/2 ,開方可用(double)方法)

② 方法

Triangle(double x, double y, double z):

建構函式,給三條邊和s賦初值。

toString(  ):

輸出矩形的描述資訊,如“three sides:3.0,4.0,5.0,perimeter=12.0,area=6.0”

⑷Test類作為主類要完成測試功能

① 生成Rectangle物件

呼叫物件的toString方法,輸出物件的描述資訊

interface ShapeArea { double getArea(  );

double getPerimeter(  );

}

class Rectangle implements ShapeArea { double width,height;

Rectangle(double w,double h) {ko width =w;

height=h;

}

public void toString(  )

{

tln("width="+width+",height="+height+", perimeter="+ getPerimeter(  )+", area="+ getArea(  ));

}

public double getArea(  )

{ return width*height;

}

public double getPerimeter(  )

{ return 2*(width+height);

} }

class Triangle implements ShapeArea { double x,y,z,s; Triangle(double x, double y, double z) { this.x =x; this.y=y;

this.z=z; s = (x+y+z)/2; }

public void toString(  )

{

tln("Three Sides:"+x+","+y+","+z+",Perimeter="+ getPerimeter(  )+", area="+ getArea(  ));

}

public double getArea(  )

{

return (s*(s-x)*(s-y)*(s-z));

}

public double getPerimeter(  )

{ return x+y+z;

} }

class test { public static void main(String[] args) { Rectangle rct = new Rectangle(4,5);

_String(  );

} }

1、下列敘述中,錯誤的是______。

A、Applet的預設佈局管理器是FlowLayout

B、JApplet中增加構件是加到JApplet的內容面板上,不是直接加到JApplet中

C、JApplet的內容面板的預設佈局管理器是BorderLayout

D、JApplet的內容面板的預設佈局管理器是FlowLayout

本題考的是佈局管理器。

向JApplet中增加構件,是把構件新增到Swing Applet的內容面板中;對JApplet設定佈局管理器,是對Swing Applet的內容面板進行設定,Swing Applet的內容面板的預設佈局管理器是BorderLayout,所以,JApplet的內容面板的預設佈局管理器是BorderLayout;而Applet的預設佈局管理器是FlowLayout。

故本題答案為D

而japplet是applet的子類

2、 護本地主機,對Applet安全限制中正確的是______。

A、Applet可載入本地庫或方法

B、Applet可讀、寫本地計算機的檔案系統

C、Applet可向Applet之外的任何主機建立網路連線

D、Applet不能執行任何本地可執行程式

許多瀏覽器為了保護本地主機,對Applet作了如下安全限制:

1、Applet不能執行任何本地可執行程式;

2、禁止載入本地庫或方法;

3、禁止讀、寫本地計算機的檔案系統;

4、禁止向提供Applet之外的任何主機建立網路連線;

5、不能讀取某些系統資訊,除了Java版本號、作業系統名或版本號、檔案分隔符、路徑分隔符以及行分隔符之外,Applet不能獲得與本地計算機有關的任何資訊,如:使用者名稱、電子郵件地址等;

6、由一個Applet彈出的視窗外觀上與一個Application彈出的視窗不同,Applet彈出的視窗中將會有警告提示資訊,以幫助使用者區分Applet視窗與可信的Application視窗。

故本題答案為D。

3、Java對I/O訪問所提供的同步處理機制是______。

A、位元組流

B、過濾流

C、字元流

D、壓縮檔案流

本題考的是過濾流。

Java對I/O訪問所提供的同步處理機制是過濾流。一般,使用一個過濾流要求首先把過濾流連線到某個I/O流上,再通過構造方法的引數去指定連線的I/O流。

故本題答案為B。

4、 Panel類的預設佈局管理器是______。

A、BorderLayout

B、CardLayout

C、FlowLayout

D、GridBagLayout

本題考的是佈局管理器。

FlowLayout是Panel和Applet的預設佈局管理器。

故本題答案為C。

5、Java對檔案類提供了許多操作方法,能獲得檔案物件父路徑名的方法是______。

A、getAbsolutePath()

B、getParentFile()

C、getAbsoluteFile()

D、getName()

本題考的是File類提供的方法。

getAbsolutePath():得到一個檔案的絕對路徑名;

getParentFile():得到檔案物件父路徑名;

getAbsoluteFile():等價於new File(bsolutePath());

getName():得到一個不包含路徑的檔名。

故本題答案為B。

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。