2015下半年全國計算機二級Java全真模擬試題及答案
一、選擇題
1.在瀏覽器中執行applet 程式,以下選項中的哪個方法將被最後執行( C )。
A、init( )
B、start( )
C、destroy( )
D、stop( )
2. Java application中的主類需包含main方法,main方法的返回型別是什麼?( D )
A、int
B、float
C、double
D、void
3.設有下面兩個類的定義:
class Person {
class Student extends Person {
{
long id; // 身份證號
int score; // 入學總分 String name; // 姓名
int getScore( ){
}
return score; }
}
則類Person和類Student的關係是( B )。
A、包含關係
B、繼承關係
C、關聯關係
D、上述類定義有語法錯誤
4.在編寫Java Applet程式時,需要在程式的開頭寫上( B )語句。
A、import .*
B、import et.*
C、import .*
D、import t.*
5.容器Panel和Applet預設使用的佈局編輯策略是( A )
A、FlowLayout
B、BorderLayout
C、GridLayout
D、CardLayout
6.有以下程式片段,下列哪個選項不能插入到行1。( A ) 1. ic class A{ 3.//do sth 4. }
A、public class MainClass{ }
B、package mine;
C、class ANotherClass{ }
D、import .*;
7.在使用interface宣告一個介面時,只可以使用( D )修飾符修飾該介面。
A、private
B、protected
C、private protected
D、public
8.以下哪個不是Java的關鍵字?( A )
A、FALSE
B、const
C、this
D、void
9.有程式如下,關於程式的描述哪個是正確的?( C )
public class Person{
static int arr[] = new int[5];
public static void main(String a[])
{ tln(arr[0]); } }
A、編譯將產生錯誤
B、編譯時正確,但執行時將產生錯誤
C、正確,輸出0
D、正確,輸出 null
10.以下關於建構函式的描述錯誤的是( A )。
A、建構函式的返回型別只能是void型。
B、建構函式是類的一種特殊函式,它的方法名必須與類名相同。
C、建構函式的主要作用是完成對類的物件的初始化工作。
D、一般在建立新物件時,系統會自動呼叫建構函式。
11.假設A類有如下定義,設a是A類的一個例項,下列語句呼叫哪個是錯誤的?( C)
class A { int i;
static String s; void method1( ) { }
static void method2( ) { } }
A、tln(a.i);
B、od1( );
C、od1( );
D、od2( )
12.有程式片段如下,以下哪個表示式的結果為true?( B )
Float s=new Float(0.1f);
Float t=new Float(0.1f);
Double u=new Double(0.1);
A、s==t
B、ls(t)
C、ls(s)
D、ls(u)
t( )方法使用哪種型別的引數? ( A )
A、Graphics
B、Graphics2D
C、String
D、Color
14.下面哪個方法與applet的顯示無關?( A )
A、draw( )
B、 update( )
C、repaint( )
D、paint( )
15.下面哪個函式是public void aMethod( ){...}的過載函式?( D )
A、void aMethod( ){...}
B、public int aMethod( ){...}
C、public void aMethod ( ){...}
D、public int aMethod ( int m){...}
16 下列不可作為java語言識別符號的是( D )
A a1
B $1
C _1
D 11
17 有一段java 應用程式 ,它的主類名是a1,那麼儲存它的原始檔名可以是(A)
A
B s
C a1
D都對
18 下面說法正確的是(C)
A java Applet 程式必須在瀏覽器中執行
B java 應用程式必須在瀏覽器裡執行
C java Applet 程式不一定在瀏覽器中執行
D java 應用程式可以在瀏覽器中執行
19 在瀏覽器中執行applet 程式的四個方法的最先執行的是(A)
A init( )
B start( )
C destroy( )
D stop( )
20 整型資料型別中,需要記憶體空間最少的是(D)
A short
B long
C int
D byte
21 java 類可以作為(C)
A 型別定義機制
B 資料封裝機制
C 型別定義機制和資料封裝機制
D 上述都不對
22 在建立物件時,必須(C )
A 先宣告物件,然後才能使用物件
B 先宣告物件,為物件分配記憶體空間,然後才能使用物件
C 先宣告物件,為物件分配記憶體空間,對物件初始化,然後才能使用物件
D 上述說法都對
23 在呼叫方法時,若要使方法改變實參的值,可以(D)
A 用基本資料型別作為引數
B 用物件作為引數
C (A)和(B)都對
D (A)和(B)都不對
24 JAVA 中( C )
A 一個子類可以有多個父類,一個父類也可以有多個子類
B 一個子類可以有多個父類,但一個父類只可以有一個子類
C 一個子類可以有一個父類,但一個父類可以有多個子類
D 上述說法都不對
25 paint()方法使用哪種型別的引數? ( A )
A、Graphics
B、Graphics2D
C、String
D、Color
26在Java中,一個類可同時定義許多同名的方法,這些方法的形式引數個數、型別或順序各不相同,傳回的值也可以不相同。這種特性稱為 ( C )
A、隱藏
B、覆蓋
C、過載
D、Java不支援此特性
27類Test1、Test2定義如下:
1. public class Test1
2.{ public float aMethod(float a,float b) throws
3. IOException { }
4. }
5. public class Test2 extends Test1{ 6. 7.}
將以下哪種方法插入行4是不合法的。 ( A )
A、 float aMethod(float a,float b){ }
B、 public int aMethod(int a,int b)throws Exception{ }
C、 public float aMethod(float p,float q){ }
D、 public int aMethod(int a,int b)throws IOException{ }
28以下哪個介面的定義是正確的? (D )
A、 interface B
{ void print() { } }
B、 abstract interface B
{ void print() }
C、 abstract interface B extends A1,A2 //A1、A2為已定義的介面
{ abstract void print(){ };}
D、 interface B { void print();}
29 下列哪些語句關於Java記憶體回收的說明是正確的? ( B )
A、程式設計師必須建立一個執行緒來釋放記憶體
B、記憶體回收程式負責釋放無用記憶體
C、記憶體回收程式允許程式設計師直接釋放記憶體
D、記憶體回收程式可以在指定的時間釋放記憶體物件
30 A派生出子類B ,B派生出子類C,並且在Java原始碼中有如下宣告:
1. A a0=new A();
2. A a1 =new B();
3. A a2=new C();
問以下哪個說法是正確的? ( D)
A、只有第1行能通過編譯
B、第1、2行能通過編譯,但第3行編譯出錯
C、第1、2、3行能通過編譯,但第2、3行執行時出錯
D、第1行、第2行和第3行的宣告都是正確的
二、填空題
1 java 源程式編譯命令是 (javac)
2 java 應用程式中有一個main()方法,它前面有三個修飾符是 ( public , static , void )
3 java語言資料型別可分為兩大類,一類稱為 ( 基本資料型別 ) ,另一類稱為 ( 引用資料型別 )
4 在轉向語句中, ( continue ) 語句使得程式結束本次迴圈,回到迴圈的條件測試部分繼續執行。
5設x為float型變數, y為 double型變數, a為 int型變數,已知 x=2.5f, a=7 ,y=4.22 則表示式x+a%3*(int)x%(int)y的值為 ( 4.5 )
6設x為float型變數, y為 double型變數, a為 int型變數,b 為long 型變數,c為char 型,則表示式x+y*a/x+b/y+c 的值為( double ) 型別 7設有陣列定義:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 則執行以下幾個語句後的輸出結果是 ( 120 )
for ( int i = 0 i < th i + + ) if ( i % 2 = = 1 ) s += MyIntArray[i] tln( s )
for ( int i = 0 i < th i + + ) if ( i % 2 = = 1 ) s += MyIntArray[i] tln( s )
三、判斷題
1. Java語言中的陣列元素下標總是從0開始,下標可以是整數或整型表示式。 (√ )
2. 在Java中物件可以賦值,只要使用賦值號(等號)即可,相當於生成了一個各屬性與賦值物件相同的新物件。( × )
3. 所謂抽象類就是包含有抽象方法的類。( ×)
4. Java系統的標準輸入物件是,標準輸出物件有兩個,分別是標準輸出和標準錯誤輸出。(√)
5. 如果p是父類Parent的物件,而c是子類Child的物件,則語句c = p是正確的。( ×)
6. 當一個方法在執行過程中產生一個異常,則這個方法會終止,但是整個程式不一定終止執行。(√ )
7. 用“+”可以實現字串的拼接,用- 可以從一個字串中去除一個字元子串。( × )
8. 一個容器中可以混合使用多種佈局策略。(×)
9. Java中,並非每個事件類都只對應一個事件。(√ )
10. Java的原始碼中定義幾個類,編譯結果就生成幾個以s為字尾的`位元組碼檔案。(√)
11. Java Applet是由獨立的直譯器程式來執行的。(×)
12. Java的字元型別採用的是ASCII編碼。( × )
13. Java的各種資料型別佔用固定長度,與具體的軟硬體平臺環境無關。 (√)
14. System類不能例項化,即不能建立System類的物件。(×)
15. 使用者自定義的圖形介面元素也可以響應使用者的動作,具有互動功能。 (√ )