Java面試筆試題-軟件科技公司
一、單選題
1.在發(fā)布-訂閱( publish-subscribe)消息模型中,訂閱者訂閱一個主題后,當(dāng)該主題有新消息達到時,所有訂閱者都會受到通知。下面哪個設(shè)計模式最合這個模型?(??)
A.適配器(Adapter ) ????????????????????B. Bridge模式
C.觀察者(Observer) ????????????????????D.狀態(tài)(state)
2.下列關(guān)于修飾符混用的說法,錯誤的是(??)
A.a(chǎn)bstract不能與final并列修飾同一個類
B.a(chǎn)bstract類中可以有 private的成員
C.a(chǎn)bstract方法必須在 abstract類中
D.static方法中能處理非 static的屬性
3.以下關(guān)于final的描述中,錯誤的是( ?)
A、final可以用來修飾接口以及抽象類
B、final修飾的變量不允許被再次賦值
C、final修飾的類無法被繼承
D、final修飾的變量需要初始化
4.關(guān)于 sleep()和wait(),以下描述錯誤的一項是(??)
A. sleep是線程類(Thread)的方法,wait是 Object類的方法
B. sleep不釋放對象鎖,wait放棄對象鎖
C. sleep暫停線程、但監(jiān)控狀態(tài)仍然保持,結(jié)束后會自動恢復(fù)
D.?wait后進入等待鎖定池,只有針對此對象發(fā)出notify方法后獲得對象鎖進入運行狀態(tài)
5.你怎樣強制對一個對象立即進行垃圾收集?(??)
A.給這個對象的所有引用設(shè)置一個新的值(例如nul)
B. 垃圾收集是不能被強迫立即執(zhí)行
C.調(diào)用 System.gc()
D.調(diào)用 System.Gc(),同時傳遞要進行垃圾收集對象的引用
二、多選題
1.鏈表具有的特點是:(???)
A.不必事先估計存儲空間
B.可隨機訪問任一元素
C.插入刪剛除不需要移動元素
D.所需空間與線性表長度成正比
2下列說法錯誤的有(???)
A.?在類方法中可用this來調(diào)用本類的類方法
B.在類方法中調(diào)用本類的類方法時可直接調(diào)用
C. 在類方法中只能調(diào)用本類中的類方法
D. 在類方法中絕對不能調(diào)用實例方法
3.有關(guān)線程的哪些敘述是對的(???)
A.?一旦一個線程被創(chuàng)建,它就立即開始運行
B.?使用start()方法可以使一個線程成為可運行的,但是它不一定立即開始運行
C.?當(dāng)一個線程因為搶先機制而停止運行,它被放在可運行隊列的前面
D.?一個線程可能因為不同的原因停止并進入就緒狀態(tài)
4.關(guān)于異常(Exception). 下列描述正確的是( ??)
A. 異常的基類為Exception,所有異常都必須直接或者間接繼承它
B.異??梢杂胻ry{...}catch(Exception e){...}來捕獲并進行處理
C.如果某異常繼承?RuntimeException,則該異??梢圆槐宦暶?/p>
D.異??梢噪S便處理,而不是拋給外層的程序進行處理
5.執(zhí)行下列代碼后,哪個結(jié)論是正確的 String[] s=new String[10]; ( ???)
A.s[9]為null ? ? ? B.s[10]為””
C.S[0]為未定義 ? ? ?D.s.length為10
三、問答題
1.== 和 equals的區(qū)別。
?
?
2.閘述 servlet和jsp的關(guān)系。
??
3.闡述 final, finally, finalize的區(qū)別。
?
4.同步和異步有什么區(qū)別,請舉例說明。
?
?
5.什么是線程安全,請舉例說明。
?
?
6.什么是線程池,使用線程池有什么好處。
??
?
四、編程題
給定一個32位有符號整數(shù),將整數(shù)中的數(shù)字進行反轉(zhuǎn)。
示例?1:輸入:123 ?輸出:321
示例?2:輸入:-123?輸出:-321
示例?3:輸入:120??輸出:21
注意:假設(shè)我們的環(huán)境只能存儲32位有符號整數(shù),其數(shù)值范圍是[-2~31, 2~31-1]。根據(jù)這個假設(shè),如果反轉(zhuǎn)后的整數(shù)溢出,則返回0。
入?yún)ⅲ篿nt
出參:int