Java是一種可以撰寫跨平臺應用程式的面向物件的程式設計語言。下面為大家整理的是java語言的期末考試題,希望能幫助到大家!
一、 單選題
1、下列程式段執行後的結果是( )。
String s = new String("abcdefg");
for (int i=0; i
t(At(i));
}
A) aceg B) ACEG C) abcdefg D) abcd
2、有整型陣列:int[] x={12,35,8,7,2};,則呼叫方法(x)後,陣列x中的元素值依次是( ).
A) 2 7 8 12 35 B) 12 35 8 7 2
C) 35 12 8 7 2 D) 8 7 12 35 2
3、下面的程式段建立了BufferedReader類的物件in,以便讀取本機c盤my資料夾下的檔案。File建構函式中正確的路徑和檔名的表示是( )。
File f = new File(填程式碼處);
file =new FileReader(f);
in=new BufferedReader(file);
A) "./" B) "../my/" C) "c:my" D) "c: my"
4、應用程式的main方法中有以下語句,則輸出的結果是 ( )。
String s1=new String("abc");
String s2=new String("abc");
boolean b1=ls(s2);
boolean b2=(s1==s2);
t(b1+" "+b2);
A)true false B) false true C) true true D)false false
5、應用程式的main方法中有以下語句,則輸出的結果是 ( )。
Hashtable hashtable=new Hashtable();
("x","12345");
("y","67890");
("a","abcde");
tln(("a"));
A) a B) abcde C) 12345 D) 67890
6、下面語句的功能是( )。
RandomAccessFile raf2 = newRandomAccessFile("","rw" );
A)開啟當前目錄下的檔案,既可以向檔案寫資料,也可以從檔案讀資料。
B)開啟當前目錄下的檔案,但只能向檔案寫入資料,不能從檔案讀取資料。
C)開啟當前目錄下的檔案,但不能向檔案寫入資料,只能從檔案讀取資料。
D) 以上說法都不對。
7、應用程式的main方法中有以下語句,則輸出的結果是 ( )。
String s="12345#aaa#bbb#67890";
int n=xOf("#");
int k=xOf("#",n+1);
int m=xOf("#",k+1);
String s2=tring(m+1);
tln(s2);
A) 123456 B) 67890 C) aaa D) bbb
8、下面程式段執行後b的值是( )。
Integerinteg =new Integer(9);
boolean b = integ instanceof Object;
A) 9 B) true C) 1 D) false
9、應用程式的源程式如下,在命令列鍵入:
java Test aaa bb c
回車後輸出的結果是 ( )。
public class Test {
publicstatic void main(String args[]) {
int k1=th;
int k2=args[1]th();
t(k1+" "+k2);
}
}
A) 3 2 B)1 2 C) 1 3 D)3 3
10、應用程式的main方法中有以下語句,則輸出的結果是 ( )。
int b[][]={{1}, {2,2}, {2,2,2}};
int sum=0;
for(int i=0;i
for(int j=0;j
sum*=b[i][j];
}
}
tln("sum="+sum);
A) 32 B)11 C) 2 D) 3
11、應用程式的main方法中有以下語句,則執行後輸出的結果是 ( )。
int[] x={125,21,5,168,98};
int max=x[0];
for(int i=1;i
if(x[i]>max)
max=x[i];
}
tln(max);
A) 125 B) 5 C) 98 D) 168
12、程式編譯執行後輸出的結果是( )。
public class Test {
Strings1="java";
publicstatic void main(String args[]) {
intz=2;
Testt=new Test();
tln(t.s1+z);
}
}
A) java2 B)2 C)沒有輸出結果 D)java
13、應用程式的main方法中有以下語句,則輸出的結果是 ( )。
Strings1="0.5", s2="12";
double x=eDouble(s1);
int y=eInt(s2);
tln(x+y);
A) 12.5 B) 120.5 C)12 D) “12.5”
14、下面的程式建立了一個檔案輸出流物件,用來向檔案中輸出資料,假設程式當前目錄下不存在檔案,編譯下面的程式後,將該程式執行3次,則檔案 的內容是( )。
import .*;
public class Test {
publicstatic void main(String args[]) {
try{
Strings="ABCDE";
byteb[]=ytes();
FileOutputStreamfile=new FileOutputStream("",true);
e(b);
e();
}
catch(IOExceptione) {
tln(ring());
}
}
}
A) ABCABC B) ABCDE C) Test D) ABCDE ABCDE ABCDE
15、下面那些方法不是介面Collection中已宣告的方法( )?
A)新增元素的add(Object obj) 方法
B)刪除元素的remove(Objectobj)方法
C)得到元素個數的length()方法
D)返回迭代器的iterator()方法,迭代器用於元素遍歷
二、多選題
1、下面main()方法的定義哪些是正確的( )?
A) publicstatic void main(String args[]) {} B) publicstatic void main(String[]) {}
C) publicstatic void main(String[] args) {} D)publicstatic void main(String [] x) {}
2、執行緒物件的生命週期中,通常經歷下面哪些狀態( )。
A)新建 B)執行 C)就緒 D)死亡
3、下面說法正確的是( )。
A) final 可修飾類、屬性(變數)、方法。
B) abstract可修飾類、方法。
C) 抽象方法只有方法頭,沒有方法體。
D) 關鍵字final和abstract不能同時使用。
4、下面關於java中輸入/輸出流的說法正確的是( )。
A) FileInputStream與FileOutputStream類用讀、寫位元組流。
B) Reader與Writer類用來讀、寫字元流。
C) RandomAccessFile既可以用來讀檔案,也可以用來寫檔案。
D) File類用來處理與檔案相關的操作。
5、下面說法正確的是( )。
A)如果某公共介面被宣告在一個原始檔中,則介面必須與原始檔具有相同名字。
B)如果原始檔包含import語句,則該語句必須是除空行和註釋行外的第一個語句行。
C)如果某原始檔包含package語句,則該語句必須是第一個非空、非註釋行。
D)介面中的方法必定是抽象方法,但可以不用關鍵字abstract修飾。
6、下面關於Java中異常處理try塊的`說法正確的是( )?
A) try塊後通常應有一個catch 塊,用來處理try塊中丟擲的異常。
B) catch 塊後必須有finally塊。
C)可能丟擲異常的方法呼叫應放在try塊中。
D)對丟擲的異常的處理必須放在try塊中
7、下面關於程序、執行緒的說法正確的是( )。
A)程序是程式的一次動態執行過程。一個程序在其執行過程中,可以產生多個執行緒——多執行緒,形成多條執行線索。
B)執行緒是比程序更小的執行單位,是在一個程序中獨立的控制流,即程式內部的控制流。執行緒本身不能自動執行,棲身於某個程序之中,由程序啟動執行。
C)Java多執行緒的執行與平臺相關。
D)對於單處理器系統,多個執行緒分時間片獲取CPU或其他系統資源來執行。對於多處理器系統,執行緒可以分配到多個處理器中,從而真正的併發執行多工。
8、關於BufferedReader類的readLine()方法,以下說法正確的是()。
A)方法readLine()每次讀取一行資料。
B)方法readLine()每次讀取一個位元組。
C)該方法可能丟擲IOException異常,呼叫該方法時通常應將它放到try塊中,並通過catch塊處理異常。
D)如果讀到流的末尾,該方法返回的結果為null。
三、程式閱讀題
1、閱讀下面的程式,回答問題(u問3分,v問3分,共6分)。
import .*;
import g.*;
public class T extends JFrame {
public T ( ) {
super("GridLayout");
Container con=ontentPane();
ayout(new GridLayout(2,3));
(new JButton("a"));
(new JButton("b"));
(new JButton("c"));
(new JButton("d"));
(new JButton("e"));
(new JButton("f"));
setSize(200, 80);
setVisible(true);
}
public static void main(String args[]) {
new T();
}
}
u畫圖表示程式執行後的圖形介面。
v如果程式通過實現某個介面處理按鈕的動作事件,則該介面名為何?介面中的方法頭宣告如何?
答案:
u
v介面名:ActionListener
介面中的方法:publicvoid actionPerformed(ActionEvent e)
2、閱讀下面的程式,回答問題(u問3分,v問3分,共6分)。。
import .*;
publicclass T {
public static void main(Stringargs[]) {
Set set = new TreeSet();
(new Integer(10));
(new Integer(5));
(new Integer(15));
(new Integer(5));
(new Integer(10));
tln("size =" + ());
Iterator it=ator();
while(ext()){
t(()+" ");
}
}
}
u程式執行後輸出的結果如何?
v說明java中的集合(Set介面)和對映(Map介面)的主要區別。
答案:
u
size = 3
5 10 15
vSet介面是不包含重複元素的集合;Map介面將鍵對映到值,鍵可以重複,但每個鍵最多隻能對映一個值。
3、閱讀下面的程式,並回答問題(u問3分,v問3分,共6分)。
import .*;
public class Test {
public static void main(String args[]) throws IOException {
BufferedReader buf=new BufferedReader(
newInputStreamReader());
while(true) {
String str=Line();
if(ls("quit"))
break;
int x=eInt(str);
tln(x*x);
}
}
}
編譯執行上面的程式:
u從鍵盤輸入5,回車後輸出的結果如何?
v從鍵盤輸入quit,回車後程序執行情況如何?
答案:
u25
v終止應用程式的執行。