- 相關(guān)推薦
北京神舟航天軟件筆試題目摘抄
基礎(chǔ)篇(100分鐘)(滿分100分)
(一) 不定項(xiàng)選擇題(36分,每小題1.5分)
基本語(yǔ)法測(cè)試
1.給定如下代碼
class Test{
private int m;
public static void fun() {
// some code...
}
}
怎樣修改才能使變量m能夠在方法fun()中直接使用
A.改成protected int m
B. 改成public int m
C. 改成static int m
D. 改成int m to int m
2.下面的方法中那個(gè)是public void example(){...}的正確的重載函數(shù)(JDK1.4)
A. public void example( int m){...}
B. public int example(){...}
C. public void example2(){...}
D. public int example ( int m, float f){...}
3.給出如下定義
String s = "story";
下面的表達(dá)式中那個(gè)是正確的?
A. s += "books";
B. char c = s[1];
C. int len = s.length;//沒(méi)有()
D. String t = s.toLowerCase();
4.給定如下代碼段:
boolean m = false;
if ( m = false )
System.out.println("False");
else
System.out.println("True");
其運(yùn)行結(jié)果是什么?
A. False
B. True
C. None
D. 有錯(cuò)誤,無(wú)法編譯通過(guò).
5. 所給代碼如下:
1) class Example{
2) String str;
3) public Example(){
4) str= "example";
5) }
6) public Example(String s){
7) str=s;
8) }
9) }
10) class Demo extends Example{
11) }
12) public class Test{
13) public void f () {
14) Example ex = new Example("Good");
15) Demo d = new Demo("Good");
16) }
17) }
該代碼會(huì)在那一行出錯(cuò)?
A. line 3
B. line 6
C. line 10
D. line 14
E. line 15
6. 下面那種描述是正確的?
A. 在Java中不允許多重繼承,這樣可以使程序更加可靠
B. 子類(lèi)繼承父類(lèi)的所有方法 (包括構(gòu)造方法)
C. 一個(gè)類(lèi)可以實(shí)現(xiàn)很多接口.
D. 當(dāng)一個(gè)類(lèi)實(shí)現(xiàn)一個(gè)接口,那么他就必須定義該接口中的所有方法。
7. 下面關(guān)于final、finally、finalize描述正確的是
A. final可以被用來(lái)做常量的定義關(guān)鍵字
B. finally可以被用作類(lèi)限定詞
C. finalize可以被用來(lái)進(jìn)行錯(cuò)誤處理
D. final可以被用來(lái)作為垃圾回收的回調(diào)函數(shù)
E. final可以被用來(lái)作為一個(gè)抽象函數(shù)的限定詞,如: public final abstract fun();
8. 下面關(guān)于String描述正確的是:
A. String str1=”aa”; String str2=”aa”; System.out.println((str1==str2)); 輸出為true
B. String str1=”aa”; String str2=”aa”; System.out.println(str1.equals(str2)); 輸出為true
C. String str1 = “aaaa” + “bbbbb” + “aaaa”; 會(huì)產(chǎn)生5個(gè)對(duì)象
D. String aaa = “aaaaaa[dd”.replaceAll(“[“, “c”); aaa的值變?yōu)椤盿aaaaacdd”
IO方面API測(cè)試
9. 下面哪些Java中的流對(duì)象是字節(jié)流?
A. FileInputStream B. BufferedInputStream
C. PushbackInputStream D. ByteArrayInputStream
10. 下面的類(lèi)哪些可以處理Unicode字符?
A. InputStreamReader
B. BufferedReader
C. Writer
D. PipedInputStream
Java異常處理
11. 下面程序的輸出結(jié)果是什么
class TestException{
public static void main( String[] args ){
int i = 0;
try {
if (i == 0) {
throw new IOException("IO Error");
}
} catch (IOException ioex) {
System.out.print(ioex.getMessage());
i++;
} catch (Exception ex) {
System.out.print("Exception Find") ;
i += 2;
} finally {
i++;
}
try {
if (i == 1) {
throw new IOException("IO Error");
}
if (i == 2) {
throw new Exception("Exception Find");
} else {
throw new Error( "Unknow Error" ) ;
}
} catch( IOException ex ){
System.out.print(ex.getMessage());
} catch (Exception ex) {
System.out.print(ex.getMessage());
} catch (Throwable tr){
System.out.print(tr.getMessage());
}
}
}
A. IO ErrorIO Error
B. IO ErrorUnknow Error
C. IO ErrorException Find
D. Exception FindIO Error
E. Exception FindException Find
Java多線程測(cè)試
12. 如果一個(gè)線程調(diào)用了wait(), 那個(gè)方法可以讓他繼續(xù)運(yùn)行?
A. join()
B. resume()
C. notify()
D. notifyAll()
E. high priority thread is ready
13. 下面那個(gè)方法被用來(lái)定義線程的執(zhí)行體?
A. start()
B. init()
C. run()
D. main()
E. synchronized()
14. 下面那個(gè)關(guān)鍵字用于對(duì)線程進(jìn)行互斥訪問(wèn)控制?
A. native
B. static
C. synchronized
D. abstract
數(shù)據(jù)結(jié)構(gòu)API
15. 下面那個(gè)Java中的類(lèi)可以用來(lái)保存數(shù)據(jù)時(shí)隨機(jī)訪問(wèn)效率較高
A. ArrayList B. Vector C.LinkList D.Stack
16. 下面那個(gè)Java類(lèi)中可以用來(lái)用來(lái)保存鍵值對(duì)
A. HashSet B. HashMap C.LinkList D.Stack
Swing開(kāi)發(fā)測(cè)試
17. 下面那個(gè)容器對(duì)象必須要添加到其他的容器對(duì)象中才能使用?
A. Window
B. Frame
C. Dialog
D. Panel
18. 下面哪些類(lèi)是Java中的布局管理器?
A. CardLayout
B. BorderLayout
C. PanelLayout
D. GridLayout
E. BagLayout
19. 將一個(gè)Button放置到一個(gè)Frame中,使這個(gè)Button的高隨著Frame的改變而改變,但是寬度不隨之改變,應(yīng)該采用哪種布局方式?
A. FlowLayout
B. CardLayout
C. North and South of BorderLayout
D. East and West of BorderLayout
E. GridLayout
20. 下面哪些方法能夠在類(lèi)EventObject中得到事件源?
A. getFrame() B. getID()
C. getSource() D. getWindow()
21. 下面那個(gè)關(guān)于事件x聽(tīng)器的描述是正確的?
A. 一個(gè)組件可以注冊(cè)多個(gè)事件x聽(tīng)器.
B. 一個(gè)組件只能注冊(cè)一個(gè)事件x聽(tīng)器.
C. 一個(gè)x聽(tīng)器可以接收和處理來(lái)自多個(gè)組件的事件.
D. 一個(gè)x聽(tīng)器只能接收和處理來(lái)自一個(gè)組件的事件.
22. 下面的類(lèi)哪些不是Java中的容器類(lèi)?
A. ScrollPane
B. JLabel
C. Scrollbar
D. Dialog
網(wǎng)絡(luò)通訊測(cè)試
23. 下面的類(lèi)中哪些被用來(lái)實(shí)現(xiàn)Tcp/Ip協(xié)議的客戶(hù)端和服務(wù)器端程序?
A. ServerSocket
B. Server
C. Socket
D. DatagramPacket
E. DatagramSocket
24. 下面關(guān)于TCP和UDP的描述正確的是:
A. TCP連接發(fā)送數(shù)據(jù)之前必須保證網(wǎng)絡(luò)連接已經(jīng)成功建立
B. UDP連接發(fā)送數(shù)據(jù)之前必須保證網(wǎng)絡(luò)連接已經(jīng)成功建立
C. ServerSocket類(lèi)建立的是TCP連接
D. DatagramSocket類(lèi)建立的是UDP連接
(二) 問(wèn)答題(34分)
數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí)
1、 分別寫(xiě)出數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)中各種不同對(duì)象的作用(表,視圖,序列,存儲(chǔ)過(guò)程,索引,主鍵,外鍵,約束,觸發(fā)器)(10分)
SQL問(wèn)答題
2、 根據(jù)要求寫(xiě)出Sql查詢(xún)語(yǔ)句(10分)
表結(jié)構(gòu):
1、 表名:g_cardapply
字段(字段名/類(lèi)型/長(zhǎng)度):
g_applyno varchar 8;// 申請(qǐng) 單號(hào)(關(guān)鍵字)
g_applydate bigint 8;//申請(qǐng)日期
g_state varchar 2;//申請(qǐng)狀態(tài)
2、 表名:g_cardapplydetail
字段(字段名/類(lèi)型/長(zhǎng)度):
g_applyno varchar 8;//申請(qǐng)單號(hào)(關(guān)鍵字)
g_name varchar 30;//申請(qǐng)人姓名
g_idcard varchar 18;//申請(qǐng)人身份證號(hào)
g_state varchar 2;//申請(qǐng)狀態(tài)
其中,兩個(gè)表的關(guān)聯(lián)字段為申請(qǐng)單號(hào)。
題目:
1、 查詢(xún)身份證號(hào)碼為440401430103082的申請(qǐng)日期
Select applay. g_applydate
From g_cardapply applay, g_cardapplydetail detail
Where applay. g_applyno=detail. g_applyno
And detail. g_idcard=’ 440401430103082’
2、 將身份證號(hào)碼為440401430103082的記錄在兩個(gè)表中的申請(qǐng)狀態(tài)均改為07
Update g_cardapply apply, g_cardapplydetail detail set applay.g_state=’07’, detail.g_state=’07’ Where applay. g_applyno=detail. g_applyno
And detail. g_idcard=’ 440401430103082’
3、 刪除g_cardapplydetail表中所有姓李的記錄
Delete from g_cardapplydetail where g_name like ‘李%’
Java API運(yùn)用
3、 請(qǐng)寫(xiě)出你所知道的Java API中所提供的數(shù)據(jù)結(jié)構(gòu)模型(例如Vector),并指出各數(shù)據(jù)模型在存儲(chǔ)結(jié)構(gòu)上和使用上有什么不同。(7分)
4、 指出JDBC中三種不同類(lèi)型的Statement(Statement、PreparedStatement、CallableStatement)的用途分別是什么。(7分)
(三) 讀程序?qū)懡Y(jié)果(10分)
寫(xiě)出下面程序的運(yùn)行結(jié)果,下面程序有些可能根本無(wú)法通過(guò)編譯,如果無(wú)法編譯通過(guò),請(qǐng)指出錯(cuò)誤原因。
1、寫(xiě)出下面程序的運(yùn)行結(jié)果:(3分)
public class Test {
public static void changeStr(String str){
str="welcome";
}
public static void main(String[] args) {
String str="1234";
changeStr(str);
System.out.println(str);
}
}
2、寫(xiě)出下面程序的運(yùn)行結(jié)果(5分)
class Foo{
public static void main(String args[]){
int x=4,j=0;
switch(x){
case 1:j++;
case 2:j++;
case 3:j++;
case 4:j++;
case 5:j++;
default:j++;
}
System.out.println(j);
}
}
(四) 代碼查錯(cuò)(10分)
1、指出下面程序的運(yùn)行錯(cuò)誤(4分)
public class OutClass{
private int varInOuterClass = 0;
public OutClass(){
}
public void callOutter(){
int varInOuterMethod = 0;
class InnerClass{
private int varInInnerClass = 0;
public InnerClass(){
}
public void print(){
System.out.println("varInOuterClass" + varInOuterClass);
System.out.println("varInInnerClass" + varInInnerClass);
System.out.println("varInInnerClass" + varInOuterMethod);
}
}
InnerClass inner = new InnerClass();
inner.print();
}
public static void main(String[] args){
OutClass out = new OutClass();
out.callOutter();
}
}
2、指出下面程序的運(yùn)行錯(cuò)誤(3分)
public class Something {
public static void main(String[] args) {
Something s = new Something();
System.out.println("s.doSomething() returns " + doSomething());
}
public String doSomething() {
return "Do something ...";
}
}
(五) 編程題(10分)
算法設(shè)計(jì)能力測(cè)試(10分)
1、編寫(xiě)一個(gè)類(lèi),該類(lèi)封裝了一元二次方程共有的屬性和功能,即該類(lèi)有刻畫(huà)方程系數(shù)的3個(gè)成員變量以及計(jì)算實(shí)根的方法。
方程: 求根方法為 要求:該類(lèi)的所有對(duì)象共享常數(shù)項(xiàng)。
【北京神舟航天軟件筆試題目摘抄】相關(guān)文章:
北京神舟航天軟件筆試題11-28
北京CONSULTING的筆試題目11-21
軟件測(cè)試筆試題目12-11
軟件公司筆試題目08-02
軟件測(cè)試筆試題目分享07-06
史上最全軟件筆試題目及答案08-21
07威盛筆試題目 軟件部門(mén)11-21
下午威盛筆試題目(軟件部門(mén))11-06
07威盛筆試題目(軟件部門(mén))11-06
北京 KPMG的筆試題目和感受分享11-21