閱讀屋>面試> java測試面試寶典

java測試面試寶典

java測試面試寶典

第1部分 求職過程

古人云:凡事預則立,不預則廢。機會都是垂青有準備的人的。為了得到一份滿意的工作,大家一定要對整個求職過程有清醒的瞭解。把能夠預見的、必須做的事情早一些做完,這樣在大規模招聘開始的時候就可以專心地為面試做準備。

第1章 應聘求職 3

每年的二三月份,都是應屆生求職、在職人員跳槽的高峰期。對於即將成為程式設計師的應屆畢業生們,在求職過程中怎樣確定目標公司和目標職位;對於已經是程式設計師的跳槽大軍,是按照技術路線發展自己的職業生涯,還是走向管理崗位繼續自己的職業道路,或者是改變自己的發展軌跡;大家在求職過程中要注意哪些細節?這些都是大家所關心的話題。

1.1 應聘渠道 3

1.2 應聘流程 4

第2章 簡歷書寫 5

據統計,80%的簡歷都是不合格的。不少人事管理者抱怨收到的許多簡歷在格式上很糟糕。簡歷應該如何做到在格式上簡潔明瞭,重點突出?求職信應該如何有足夠的內容推銷自己?如何控制長度,言簡意賅?相信讀了本章你會對簡歷的撰寫有一個新的認識。

2.1 簡歷注意事項 5

2.2 簡歷模板 8

第3章 3種考試 13

筆試,電話面試,面試,是順利求職的3個過程。三關全過才能順利簽約,只要有一關沒能透過,就會被"刷"掉。

3.1 筆試 13

3.2 電話面試 15

3.3 面試 16

第4章 職業生涯發展規劃 19

在一般情況下,我們工作一年之後,對自己的喜好及擅長都有了更加深刻的瞭解,這時會有較為明確的職業發展規劃。

4.1 缺乏工作經驗的應屆畢業生 19

4.2 更換工作的程式設計師們 21

第5章 3個求職技巧 23

筆者作為一個專業的技術人員,一直不相信面試有什麼真正的技巧可言。在求職面試中主要還是以實力為主,用能力說話。至於求職技巧,我覺得是一些待人接物的基本常識而已,你的家教,你的品行,你處理問題和對待朋友的態度,你的情操和品德,這些都是無法掩飾的。如果真的有什麼技巧培養,那在幼兒園的時候就已經形成了。

5.1 應屆生面試技巧 23

5.2 主考者的觀點 25

5.3 談話的技巧 26

第2部分 Java程式設計

本部分主要以Java設計語言為基礎,透過大量實際例子分析各大公司Java面試題目,從技術上分析面試題的內涵。許多面試題看似簡單,卻需要深厚的基本功才能給出完美的解答。

第6章 Java程式設計基本概念 31

對於一個求職者或者應屆畢業生,公司除了對專案經驗有所問詢之外,最好的考量辦法就是檢查基本功,包括程式設計風格,以及對賦值語句、遞增語句、型別轉換、資料交換等程式設計基本概念的理解。當然,在考試之前最好對自己所掌握的程式概念知識有所複習,尤其是對各種細緻的考點要加以重視。

6.1 Java配置 31

6.2 i++ 33

6.3 型別轉換 37

6.4 程式結構 38

6.5 其他相關問題 41

第7章 異常與反射 43

可以說,實現了反射機制的系統都具有開放性,但具有開放性的系統並不一定採用了反射機制,開放性是反射系統的必要條件。在Java類反射的主要方法中,獲得欄位資訊的class反射呼叫不同於那些用於接入建構函式的呼叫,在引數型別陣列中使用了欄位名。反射讓我們可以於執行時載入、探知、使用編譯期間完全未知的'classes。換句話說,Java程式可以載入一個執行時才得知名稱的class,獲悉其完整構造(但不包括methods定義),並生成其物件例項,或對其fields設值,或喚起其methods1。

7.1 final定義 43

7.2 異常處理 46

7.3 Reflection定義 47

第8章 傳遞與引用 53

Java語言明確說明取消了指標,因為指標往往是在帶來方便的同時導致程式碼不安全的根源,而且還會使程式變得非常複雜和難以理解,濫用指標寫成的程式碼不亞於使用早已臭名昭著的GOTO語句。Java放棄指標的概念絕對是極其明智的。但這只是在Java語言中沒有明確的指標定義,實質上每一個new語句返回的都是一個指標的引用,只不過在大多數時候Java中不用關心如何操作這個"指標",更不用像在操作C++的指標那樣膽戰心驚。唯一要多多關心的是在給函式傳遞物件的時候。

8.1 傳值基本問題 53

8.2 靜態變數與私有變數 58

8.3 輸入/輸出流 60

8.4 序列化 67

第9章 迴圈、條件、機率 71

遞迴過程的執行總是一個過程體未執行完,就帶著本次執行的結果又進入另一輪過程體的執行……如此反覆,不斷深入,直到某次過程的執行遇到終止遞迴呼叫的條件成立時,則不再深入,而執行本次的過程體餘下的部分,然後又返回到上一次呼叫的過程體中,執行其餘下的部分……如此反覆,直到回到起始位置上,才最終結束整個遞迴過程的執行,得到相應的執行結果。遞迴過程的程式設計的核心就是參照這種執行流程,設計出一種適合"逐步深入,而後又逐步返回"的遞迴呼叫模型,以解決實際面試例題。

9.1 典型遞迴問題 71

9.2 Switch 76

9.3 條件語言 78

9.4 Java排序 80

9.5 隨機數 89

第10章 Java記憶體管理 93

記憶體管理太重要了,花多少口舌介紹它都不過分。我曾經見到這樣一句話:"C++程式設計師覺得記憶體管理太重要了,所以一定要自己進行管理;Java/C#程式設計師覺得記憶體管理太重要了,所以一定不能自己去管理。"從某種意義上說,兩者都是對的。面試中記憶體管理涉及堆、棧、雜湊表、記憶體洩漏等諸方面。

10.1 堆疊 93

10.2 垃圾收集 99

10.3 clone 107

10.4 Java執行緒 109

第11章 面向物件 111

面向物件其實是現實世界模型的自然延伸。現實世界中任何實體都可以看做是物件。物件之間透過訊息相互作用。另外,現實世界中任何實體都可歸屬於某類事物,任何物件都是某一類事物的例項。如果說傳統的程序式程式設計語言是以過程為中心、以演算法為驅動的話,面向物件的程式語言則是以物件為中心,以訊息為驅動。用公式表示,程序式程式設計語言為:程式=演算法+資料;面向物件程式語言為:程式=物件+訊息。

11.1 面向物件的基本概念 112

11.2 類和物件 115

11.3 巢狀類 118

11.4 建構函式和解構函式 119

11.5 複製建構函式和賦值函式 120

11.6 多型的概念 121

第12章 繼承與介面 129

介面在實際語言,如Delphi、Java、C++等中,都有廣義和狹義之分,這很重要,以前就是因為沒明白介面的廣義和狹義之分,始終沒能真正理解介面的真正意義。廣義介面從一般意義上說,凡是一個類提供給外部使用的部分都可以被稱為介面。但是在引入繼承和抽象類之前,這個廣義介面並沒有太大意義。廣義介面的真正意義是在類的繼承中體現多型的功能,這種介面又被稱為抽象類介面。

12.1 基礎知識 129

12.2 Super 133

12.3 this 138

12.4 不能繼承的情況 142

12.5 抽象類與介面 144

12.6 設計有效的繼承 154

第13章 JavaScript 161

越來越發現很多靈巧的功能都是由JS實現的。這是因為Web模式現在還是Pull為主,要實現靈巧的功能,客戶端必須有一定的主動性,簡單的頁面重新整理是不夠的,越來越多的應用要求互動重新整理或者實時重新整理。在Push技術還未成主流的情況下,JS的價值就體現出來了。

13.1 網頁尾本 161

13.2 APPLET 162

第14章 Java架構技術及相關中介軟體 163

Push軟體開發的過程中,人們越來越意識到軟體重用的重要性。異構的系統、不同的實現方案使軟體的重用變得複雜。在中介軟體產生以前,應用軟體不得不直接面對非常底層的東西。不同的硬體體系、不同的作業系統、不同的網路協議實現和不同的資料庫等,這些使得應用程式複雜多變。面對易變的東西,軟體設計師們已經習慣於透過新增中間層的方式來隔離變化。把應用軟體所要面臨的共性問題進行提煉、抽象,在作業系統之上新增一個可複用的部分,供成千上萬的應用軟體重複使用。這一技術思想最終構成了中介軟體。

14.1 WebLogic 164

14.2 WebSphere 178

14.3 WebService 182

第3部分 資料結構和設計模式

本部分主要介紹求職面試過程中出現的第二個重要的板塊-資料結構,包括字串的使用、堆、棧、排序方法等。此外隨著外企研發機構大量遷入我國,外企針對軟體工程知識的考核,包括設計模式、UML、敏捷軟體開發,以及.NET技術和完全面向物件語言C#的面試題目將會有增無減,今後設計模式在面試中的比重會進一步提高。

第15章 字串 191

基本上求職者進行筆試時沒有不考字串的。字串也是一種相對簡單的資料結構,結合指標,容易多次引起面試官反覆發問。筆者曾不止一次在筆試或面試時遇到字串試題。事實上,字串也是一個考驗程式設計師程式設計規範和程式設計習慣的重要考點。不能忽視這些細節,因為這些細節會體現你在作業系統、軟體工程、邊界記憶體處理等方面的知識掌控能力。

15.1 字串基礎問題 191

15.2 StringBuffer 194

15.3 正則表示式 202

15.4 數字流和陣列宣告 209

15.5 字串其他問題 210

第16章 設計模式 221

地上本沒有路,走的人多了也就成了路。設計模式如同此理,它是經驗的傳承,並非體系;是被前人發現,經過總結形成了一套某一類問題的一般性解決方案,而不是被設計出來的定性規則;它不像演算法那樣可以照搬照用。

16.1 UML 222

16.2 23種模式 235

16.3 軟體工程 248

第4部分 UNIX、Oracle、網路

作為一個幾十年來幾乎沒有修改過技術架構的系統,UNIX本身的效能和特點決定了它的成功。除了精細、謹慎地繼承、改造現有技術以外,UNIX在總體設計思想方面也有所發展。這主要表現在作業系統的功能設計方面。在設計UNIX時,著眼於向用戶提供包含有多種工具而且便於綜合應用它們的程式設計環境,即構成一個能夠提供各種服務的基礎。本部分主要介紹求職面試過程中出現的第三個重要的板塊-UNIX作業系統、O

【java測試面試寶典】相關文章: