亚洲福利精品久久久久91|中文字幕乱码视频网|在线播放国产精品一区二区|亚洲成AV人片女在线观看

<thead id="tzpj5"></thead>
  • <cite id="tzpj5"><listing id="tzpj5"></listing></cite>
    <strike id="tzpj5"><option id="tzpj5"><td id="tzpj5"></td></option></strike>

    優(yōu)酷土豆筆試之Java開發(fā)類題目

    思而思學(xué)網(wǎng)

    一、選擇題

    選擇題非常簡單,都是基礎(chǔ)題,什么死鎖發(fā)生的條件、HashMap和HashSet查找插入刪除的時間復(fù)雜度、Thread類和Runnable接口、排序復(fù)雜度比較、建堆調(diào)整堆等等,具體的也記不得了。

    二、簡答題

    1. 寫出至少8個Java常用的包名稱

    2. 簡述Servlet的生命周期

    3. 不用中間變量交換a和b的值

    4. Overload和Override的區(qū)別,Overloaded方法能不能修改返回值類型?

    三、編程題

    1. 有N個人圍一圈依次報數(shù),數(shù)到3的人出列,問當(dāng)只剩一個人時他原來的位子在哪里?

    2. 有兩個已遞增有序的單鏈表pLinkList和qLinkList,將這兩個鏈表合并成一個遞增有序的鏈表,請自己定義單鏈表的結(jié)構(gòu)。

    3. 具體題目不記得,大概意思就是:從N個數(shù)中隨機(jī)抽取出M個數(shù)(M < N),為了使抽取比較均勻,請自己定義抽取函數(shù)使得抽取的數(shù)既均勻又盡量隨機(jī)。

    四、擴(kuò)展題

    具體題目也記不清了,一大堆,大概意思是:有一個海量日志庫,里面的每條日志記錄都有相應(yīng)的關(guān)鍵詞和訪問次數(shù),但記錄是無序的,為了挖掘客戶偏好,需要找出前N個最高訪問次數(shù)的日志記錄,請設(shè)計算法盡量使時間復(fù)雜度和空間復(fù)雜度最低。

    部分答案:

    1. 寫出至少8個Java常用的包名稱

    答:答出以下的任意8個就行了

    1. java.lang Java 編程語言的基本類庫

    2. java.applet 創(chuàng)建 applet 需要的所有類

    3. java.awt 創(chuàng)建用戶界面以及繪制和管理圖形、圖像的類

    4. java.io 通過數(shù)據(jù)流、對象序列以及文件系統(tǒng)實(shí)現(xiàn)的系統(tǒng)輸入、輸出

    5. java.net 用于實(shí)現(xiàn)網(wǎng)絡(luò)通訊應(yīng)用的所有類

    6. java.util 集合類、時間處理模式、日期時間工具等各類常用工具包

    7. java.sql 訪問和處理來自于 Java 標(biāo)準(zhǔn)數(shù)據(jù)源數(shù)據(jù)的類

    8. java.test 以一種獨(dú)立于自然語言的方式處理文本、日期、數(shù)字和消息的類和接口

    9. java.security 設(shè)計網(wǎng)絡(luò)安全方案需要的一些類

    10. java.beans 開發(fā) Java Beans 需要的所有類

    11. java.math 簡明的整數(shù)算術(shù)以及十進(jìn)制算術(shù)的基本函數(shù)

    12. java.rmi 與遠(yuǎn)程方法調(diào)用相關(guān)的所有類

    2. 簡述Servlet的生命周期

    答:Web容器加載servlet,生命周期開始,通過調(diào)用servlet的的init()方 法進(jìn)行servlet的初始化,通過調(diào)用service()方法實(shí)現(xiàn),根據(jù)請求的不同調(diào)用不同的doGet()和doPost()方法,結(jié)束服務(wù),web 容器調(diào)用servlet的destroy()方法。

    一個servlet的生命周期由部署servlet的容器控制,當(dāng)一個請求映射到一個servlet時,容器執(zhí)行下步驟:

    1.加載servlet類

    2.創(chuàng)建一個servlet類的實(shí)例

    3.調(diào)用init初始化servlet實(shí)例,

    4.調(diào)用service方法,傳遞一個請求和響應(yīng)對象

    5.容器要移除一個servlet,調(diào)用servlet的destroy方法結(jié)束該servlet

    3. 不用中間變量交換a和b的值

    答:很多種方法,我這里給出最簡單的:

    a = a + b;

    b = a - b;

    a = a - b;

    4. Overload和Override的區(qū)別,Overloaded方法是否可以改變返回值類型?

    答:Overload是重載的意思,Override是覆蓋的意思,也就是重寫。

    (1)重載Overload表示同一個類中可以有多個名稱相同的方法,但這些方法的參數(shù)列表各不相同(即參數(shù)個數(shù)或類型不同),重載發(fā)生在同一個類中。

    (2) 重寫Override表示子類中的方法可以與父類中的某個方法的名稱和參數(shù)完全相同,通過子類創(chuàng)建的實(shí)例對象調(diào)用這個方法時,將調(diào)用子類中的定義方法,這 相當(dāng)于把父類中定義的那個完全相同的方法給覆蓋了,這也是面向?qū)ο缶幊痰亩鄳B(tài)性的一種表現(xiàn)。子類覆蓋父類的方法時,只能比父類拋出更少的異常,或者是拋出 父類拋出的異常的子異常,因?yàn)樽宇惪梢越鉀Q父類的一些問題,不能比父類有更多的問題。子類方法的訪問權(quán)限只能比父類的更大,不能更小。如果父類的方法是 private類型,那么,子類則不存在覆蓋的限制,相當(dāng)于子類中增加了一個全新的方法。重寫發(fā)生在不同的類(父類和子類)中。

    (3)至于 Overloaded的方法是否可以改變返回值的類型這個問題,要看你倒底想問什么呢?這個題目很模糊。如果幾個Overloaded的方法的參數(shù)列表不 一樣,它們的返回者類型當(dāng)然也可以不一樣。但我估計你想問的問題是:如果兩個方法的參數(shù)列表完全一樣,是否可以讓它們的返回值不同來實(shí)現(xiàn)重載 Overload。這是不行的,我們可以用反證法來說明這個問題,因?yàn)槲覀冇袝r候調(diào)用一個方法時也可以不定義返回結(jié)果變量,即不要關(guān)心其返回結(jié)果,例如, 我們調(diào)用map.remove(key)方法時,雖然remove方法有返回值,但是我們通常都不會定義接收返回結(jié)果的變量,這時候假設(shè)該類中有兩個名稱 和參數(shù)列表完全相同的方法,僅僅是返回類型不同,java就無法確定編程者倒底是想調(diào)用哪個方法了,因?yàn)樗鼰o法通過返回結(jié)果類型來判斷。

    相關(guān)內(nèi)容:

    尼爾森招聘筆試真題分析

    立信招聘筆試真題分享

    瑪氏招聘筆試真題附筆經(jīng)

    永旺物流筆試題

    熱門推薦

    最新文章