1.下列不可作爲java語言修飾符的是()
A、a1
B、$1
C、_1
D、11
答案:D
2.有一段java 應用程序,它的主類名是a1,那麼保存它的源文件名可以是()
A、a1.java
B、a1.class
C、a1
D、都對
答案:A
3.整型數據類型中,需要內存空間最少的是()
A、short
B、long
C、int
D、byte
答案:D
4. Java 類可以作爲()
A、類型定義機制
B、數據封裝機制
C、類型定義機制和數據封裝機制
D、上述都不對
答案:C
5.在創建對象時必須()
A、先聲明對象,然後才能使用對象
B、先聲明對象,爲對象分配內存空間,然後才能使用對象
C、先聲明對象,爲對象分配內存空間,對對象初始化,然後才能使用對象
D、上述說法都對
答案:C
6.在調用方法時,若要使方法改變實參的值,可以()
A、用基本數據類型作爲參數
B、用對象作爲參數
C、A和B都對
D、A和B都不對
答案:B
7. Java中()
A、一個子類可以有多個父類,一個父類也可以有多個子類
B、一個子類可以有多個父類,但一個父類只可以有一個子類
C、一個子類可以有一個父類,但一個父類可以有多個子類
D、上述說法都不對
答案:C
8.Java語言具有許多優點和特點,哪個反映了Java程序並行機制的特點?()
A、安全性
B、多線性
C、跨平臺
D、可移植
答案:B
9. Character流與Byte流的區別是()
A、每次讀入的字節數不同
B、前者帶有緩衝,後者沒有
C、前者是字符讀寫,後者是字節讀寫
D、二者沒有區別,可以互換使用
答案:C
10.以下聲明合法的是( )
A、default String s;
B、public final static native int w( )
C、abstract double d;
D、abstract final double hyperbolicCosine( )
答案:D
11.關於以下application的說明,正確的是( )
class StaticStuff
{
static int x=10;
static { x+=5;}
public static void main(String args[ ])
{
System.out.println(“x=” + x);
}
static { x/=3;}
}
A、4行與9行不能通過編譯,因爲缺少方法名和返回類型
B、9行不能通過編譯,因爲只能有一個靜態初始化器
C、編譯通過,執行結果爲:x=5
D、編譯通過,執行結果爲:x=3
答案:C
12.關於以下程序代碼的說明正確的是( )
class HasStatic{
private static int x=100;
public static void main(String args[ ]){
HasStatic hs1=new HasStatic( );
hs1.x++;
HasStatic hs2=new HasStatic( );
hs2.x++;
hs1=new HasStatic( );
hs1.x++;
HasStatic.x- -;
System.out.println(“x=”+x);
}
}
A、 5行不能通過編譯,因爲引用了私有靜態變量
B、 10行不能通過編譯,因爲x是私有靜態變量
C、 程序通過編譯,輸出結果爲:x=103
D、 程序通過編譯,輸出結果爲:x=102
答案:D
13.以下選項中循環結構合法的是( )
A、while (int i<7)
{i++;
System.out.println(“i is “+i); }
B、 int j=3; while(j) {
System.out.println(“ j is “+j); }
C、int j=0;
for(int k=0; j + k !=10; j++,k++) {
System.out.println(“ j is “+ j + “k is”+ k); }
D、 int j=0; do{
System.out.println( “j is “+j++); if (j = = 3) {continue loop;} }while (j<10);
答案:C
14.類Test1定義如下:
public class Test1{
public float aMethod(float a,float b){ }
}
將以下哪種方法插入行3是不合法的。( )
A、public float aMethod(float a, float b,float c){ }
B、public float aMethod(float c,float d){ }
C、public int aMethod(int a, int b){ }
D、private float aMethod(int a,int b,int c){ }
答案:B
15.類Test1、Test2定義如下:
public class Test1
{ public float aMethod(float a,float b) throws
IOException { }
}
public class Test2 extends Test1{
}
將以下哪種方法插入行6是不合法的。( )
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{ }
答案:A
16.關於以下程序段,正確的說法是( )
String s1=”abc”+”def”;
String s2=new String(s1);
if(s1= =s2)
System.out.println(“= = succeeded”);
if (s1.equals(s2))
System.out.println(“.equals() succeeded”);
A、行4與行6都將執行
B、行4執行,行6不執行
C、行6執行,行4不執行
D、行4、行6都不執行
答案:C
17.Java application中的主類需包含main方法,main方法的返回類型是什麼?( )
A、int
B、float
C、double
D、void
答案:D
18.以下哪個方法用於定義線程的執行體? ( )
A、start()
B、init()
C、run()
D、synchronized()
答案:C
19.以下標識符中哪項是不合法的( )
A、const
B、$double
C、hello
D、BigMeaninglessName
答案:A
20.以下哪個關鍵字可以用來爲對象加互斥鎖?( )
A、transient
B、static
C、 serialize
D、synchronized
答案:D
21.在Java中,一個類可同時定義許多同名的方法,這些方法的形式參數個數、類型或順序各不相同,傳回的值也可以不相同。這種面向對象程序的特性稱爲( )。
A、隱藏
B、覆蓋
C、重載
D、Java不支持此特性
答案:C
22.以下關於構造函數的描述錯誤的是( )。
A、構造函數的返回類型只能是void型。
B、構造函數是類的一種特殊函數,它的方法名必須與類名相同。
C、構造函數的主要作用是完成對類的對象的初始化工作。
D、一般在創建新對象時,系統會自動調用構造函數。
答案:A
23.下列哪些語句關於Java內存回收的說明是正確的? ( )
A、程序員必須創建一個線程來釋放內存
B、內存回收程序負責釋放無用內存
C、內存回收程序允許程序員直接釋放內存
D、內存回收程序可以在指定的時間釋放內存對象
答案:B
24.若需要定義一個類域或類方法,應使用哪種修飾符?( )
A、static
B、package
C、private
D、public
答案:C
25.有以下方法的定義,請選擇該方法的返回類型( )。
ReturnType method(byte x, double y)
{
return (short)x/y*2;
}
A、byte
B、short
C、int
D、double
答案:D