程序員面試寶典
面試是通過書面、面談或線上交流(視頻、電話)的形式來考察一個人的工作能力與綜合素質,通過面試可以初步判斷應聘者是否可以融入自己的團隊。是一種經過組織者精心策劃的招聘活動。在特定場景下,以面試官對應聘者的交談與觀察為主要手段,由表及里測評應聘者的知識、能力、經驗和綜合素質等有關素質的考試活動。面試是公司挑選職工的一種重要方法。
Java程序員面試寶典
面試例題1:對象與實例有什么區別?
解析:在Java的內存分配中,對象和實例是不同的,前者分配在內存堆里,后者分配在堆棧里,至于為什么要這樣分,參考一下其他的資料。對象是不變的東西,它是對客觀事物的抽象,實例是對操作對象的引用,你不能直接操作對象。
答案:對象和實例從宏觀的角度看,區別是:對象是同類事物的一種抽象表現形式,而實例是對象的具體化,一個對象可以實例化很多實例,對象就是一個模型,實例是照著這個模型生產的最終產品。實際上就是這樣,一個對象可以實例化N個實例。就像根據一個模型可以制造多個實際的產品一樣。
從內存分配的角度來看,對象是保存在堆中的,而實例是存儲在棧中的,實例其實只是對象的一個引用,也就是指向對象的指針。
面試例題2:Java中所有的類都繼承了java.lang.Object類,而在C++中沒有像java.lang.Object這樣的類,這是為什么呢?都是面向對象,Java這樣做有什么好處呢?
解析:Java采用的是單根結構,所有的類都繼承了java.lang.Object類。對于Java這種純面向對象的語言來說,這種設計具有很好的靈活性,比如對垃圾收集來說很有利,所有的類都具有java.lang.Object類具有的方法等。C++沒有更多這樣的方法,大概是為了向后兼容。向C兼容,滿足它設計上最大的靈活性。
答案:C++的特點是指針,一個指針可以指向任何的對象、結構、基本類型、函數。
程序員面試寶典-筆試環節
筆試是程序員面試3個過程中最重要的一個環節,也是最難以提升的一個環節。不論你有多么大的才干,多么廣博的知識,如果未能通過筆試,則無緣下面的進程。下面是一個表,描述了各種IT公司筆試所考題目的類型。
公 司 名 稱 公 司 類 型 筆 試 內 容
Trend 網絡公司 C++ 或Java,網絡,數據庫,設計模式,智力測試,英語閱讀
SAP 軟件咨詢,ERP,CRM C++,概率問題,設計模式,智力測試
Advantech 硬件,自動化公司 C++(尤其是指針問題),嵌入式編程
Synopsys 電子類公司 C++(尤其是指針問題),數據結構
NEC 綜合軟件公司 C,數據結構
金山 綜合軟件公司 C++或PHP,數據庫,數據結構,設計模式
華為 通信公司 C++或Java,數據結構,數據庫
中興 通信公司 C++或Java,數據結構,數據庫
VIA 硬件公司 C++(尤其是指針問題),嵌入式編程
華為3COM 網絡公司 C++,網絡
SPSS 數據統計軟件公司 C++(尤其是繼承、多態問題),數據結構
Sybase 數據庫公司 C++,Linux,UNIX
Motorola 網絡公司 C++,網絡
IBM 綜合軟件公司 C++或Java
Oracle 數據庫公司 Java,數據庫
程序員筆試環節面試寶典
筆試是程序員面試3個過程中最重要的一個環節,也是最難以提升的一個環節。不論你有多么大的才干,多么廣博的知識,如果未能通過筆試,則無緣下面的進程。下面是一個表,描述了各種IT公司筆試所考題目的類型。
公 司 名 稱
公 司 類 型
筆 試 內 容
Trend
網絡公司
C++ 或Java,網絡,數據庫,設計模式,智力測試,英語閱讀
SAP
軟件咨詢,ERP,CRM
C++,概率問題,設計模式,智力測試
Advantech
硬件,自動化公司
C++(尤其是指針問題),嵌入式編程
Synopsys
電子類公司
C++(尤其是指針問題),數據結構
NEC
綜合軟件公司
C,數據結構
金山
綜合軟件公司
C++或PHP,數據庫,數據結構,設計模式
華為
通信公司
C++或Java,數據結構,數據庫
中興
通信公司
C++或Java,數據結構,數據庫
VIA
硬件公司
C++(尤其是指針問題),嵌入式編程
華為3COM
網絡公司
C++,網絡
SPSS
數據統計軟件公司
C++(尤其是繼承、多態問題),數據結構
Sybase
數據庫公司
C++,Linux,UNIX
Motorola
網絡公司
C++,網絡
IBM
綜合軟件公司
C++或Java
Oracle
數據庫公司
Java,數據庫
HP
程序員面試寶典
對于即將成為程序員的應屆生,首先需要考慮的是如何選擇一個適合自己職業起步的公司,以及根據自己感興趣的技術確立自己將來的職業方向。對于已經身為程序員的跳槽人員,則需要考慮繼續走技術方向還是轉型到管理、銷售等方面。在求職面試過程中需要什么流程以及需要注意什么細節?
針對初級C/C++工程師職位
所謂的初級C/C++工程師,也就是剛剛踏入C/C++開發領域的初學者,或者說是有過很短經歷的C/C++開發者。針對這個職位,下面將會介紹這個職位所需要掌握的知識體系。
面向對象的知識: C++是一個面向對象的開發語言,因此熟悉面向對象對學習C++很有必要。讀者要了解:什么是對象、什么是類、什么是封裝、什么是多態、什么是繼承、什么是抽象類、什么是接口等。讀者不但要了解概念,還需要知道這些概念是如何體現的。例如,類和對象有什么區別?類是如何封裝的?
C/C++語法:如果讀者已經有了開發經驗,那對于學習C/C++語法來講比較容易。如果你有C++等面向對象語言的開發經驗,那么只需簡單的翻看介紹C/C++的相關書籍。如果你是新手,那么就好好研究一本有關C/C++初級教程之類的書。學習了C/C++語法,加上面向對象的知識,相信讀者可以寫出來比較好的C/C++代碼。如果再抽出時間熟悉一下C/C++編程規范,那么代碼的水平就會比較正規了。
數據庫知識:作為一名初級C++開發工程師,必須要清楚如何使用數據庫進行一些簡單的開發工作,這是一些應用軟件開發的基礎。
程序員面試筆試寶典
英文面試與中文面試有很多相似之處,但由于英文語言自身的特殊性以及中英文化的差異性,使得常規的應對中文面試的方法與策略無法完全滿足在英文面試中的實際需求,還需要針對英文面試的特點制定一些應對措施。
除了需要掌握一些常見的面試技巧以外,因為英文面試的特殊性,在英文面試中,還需要重點注意以下一些特別事項:
(1) 描述口語化
針對面試官的提問,在用英語回答的時候,求職者不要為了說英語而說英語,不要大量使用事先準備好的花哨詞匯及句式,而真正針對面試官所提問題的、與工作有關的個人見解卻很少,內容空泛,邏輯混亂。最后可能得到一句英語不錯的夸獎,除此之外,什么都沒有了,自然也不會被錄用。所以,作為求職者,要明白一個道理,用簡單直白的語言表現最具魅力的自我,才是英文面試的最高境界。有些人習慣于堆砌華麗詞藻,明明可以簡單描述的內容,非要用多種從句加以限定,恨不得在面試中用大氣磅礴的英文演講征服面試官,其實又犯了舍本逐末的錯誤,所以描述要口語化。
口語的特點在于結構的不完整性和與說話場合的緊密依存性,口語中多使用“and”、“but”之類的連接詞,并且需要多使用單一的動詞結構,而少用復雜的并列句或從句。同時,在英語回答問題時,切忌語速過快,有些求職者以為只要在外國面試官前把英文說溜即可,越溜越能說明自己水平高,其他的無所謂,于是語速特別快。其實這是不對的,如果語速太快,老外根本就聽不懂這種趕火車似的中式英文,英文面試的目的雖然也是問了考察英語口頭表達能力,但不是炫英語口語,而是讓國外面試官了解你,甚至對你感興趣,最重要的是展示你的綜合素質,絕非單單的語言能力,表達清晰是首位,流利是第二位。而且,語速過快也容易給人不自信、不穩重的錯覺。
程序員面試寶典-面試注意事項
面談的時候,要與面試官保持目光接觸,顯示出你的友好、真誠、自信和果斷。如果你不與對方保持目光接觸,或者習慣性地瞟著左上角或者右上角的話,會傳達給對方你對目前話題表現冷淡、緊張、說謊或者缺乏安全感的感覺。
如果對方問到的某個問題你不是很熟悉,有一段沉默的話,請不要尷尬和緊張。面試過程中允許沉默,你完全可以用這段時間來思考?梢杂煤粑{整自己的狀態。如果過于緊張,可以直接告訴對方。表達出自己的.緊張情緒,能夠起到很好的舒緩作用。而且緊張本來也是正常的表現。
在面試過程中,應聘者也保有自己的權利。比如面試時間過長,從上午一直拖到下午,而你未進午餐就被要求開始下午的面試的話,你完全可以要求進餐后再開始。面試是一個雙方信息溝通及達成合作目的的會談,是一個雙方彼此考量和認知的過程。不要忽略自己應有的權利。
面談后,如果對方覺得你技術、溝通、態度各方面都不錯,也許會增加一個素質測評確認一下對你的判斷。
素質測評一般考查性格、能力、職業等方面,以判斷你的價值觀是否與企業相符。我們不需要去猜測這些題目到底要考查些什么,憑著你的第一感覺填寫就可以了。在幾十道甚至上百道題目中,都有幾道題是從不同角度考查一個方向的,憑猜測答題反而會前后有悖。
當然,要先看清楚題目,搞清楚是選擇一個最適合你自己的,還是描述得最不恰當的。在通過面試之后,如果有多家公司和職位的Offer可以選擇的話,我們可以將公司的行業排名、公司性質、人員規模、發展前景、企業文化、培訓機制,結合自身的生活水平、職業生涯發展規劃來進行排列,選出最適合自己的公司和職位。
程序員面試寶典:應聘不同級別職位的技巧
應聘初級職位,會針對你的編程能力和以往的項目經驗進行重點的考查。如果面試官針對你做的某個項目反復提問,那么你就需要注意了,要么面試官在這個方面特別精通,要么就是未來的職位需要用到這方面的技術。我們應該抱著一種誠懇的態度來回答,對熟悉的技術點可以詳細闡述,對于不熟悉的部分可以誠實地告訴面試官,千萬不要不懂裝懂。不過,我們同意可以引導與面試官的談話,把他盡量引導到我們所擅長的.領域。
應聘中級職位,不但會考查代碼編寫,而且會對軟件架構或相關行業知識方面進行考查。代碼編寫方面,主要以考查某種編程技巧來判斷你對代碼的駕馭能力。比如某國際知名軟件公司經常會讓面試者編寫malloc或atoi函數。越是簡單的函數越能考驗應聘者的編碼能力。你不但要實現功能,而且還要對可能出現的錯誤編寫防御性代碼,這些經驗都需要在實際編程過程中積累。
應聘高級職位,應聘者肯定對技術或某個行業有相當程度的了解,這時主要是看你與職位的契合程度、企業文化的配比性(即將人力資源及成本配比作為服務體系的重要組成部分,將公司企業文化中核心理念及價值觀作為客戶服務的重要媒介)及整體感覺。應聘管理職位的話,考查的更多是管理技巧、溝通技巧和性格因素。架構師一般會考查行業背景與軟件架構方面的知識,比如UML或建模工具的使用等;技術專家的職位則會針對相關技術進行深度考查,而不會再考查一般性的編碼能力。
程序員面試寶典-電話面試
電話面試主要是對簡歷上一些模糊信息的確認、之前經歷的驗證、針對應聘職位簡單技術問題的提問,以及英文方面的考查。
由于模式的限制,電話面試時間不會很長。在這個環節中,一定要表現得自信、禮貌、認真、嚴肅,這樣會在聲音上給對方一個良好的印象。如果聲音慵懶,語氣生硬,除非是技術題目及英文方面表現得足夠好,否則很難予以平衡。
在回答電話面試的問題時,不要過于緊張,要留心對方的問題,這些問題也許在當面的面試中還會再出現。如果對方在電話面試中要求你做英文的`自我介紹,或者干脆用英文和你對話,那在電話面試結束后一定要好好準備英文面試的內容。
筆者曾經參加過Thoughtworks、Sybase、SAP、麒麟原創等公司的電話面試。外企一般都會要求你做一個英文自我介紹和一些小問題,總的來說不會太過涉及技術方面,因為用英語來描述技術對國人而言還是有一定困難的。國企會問到技術問題,我就曾被問到如何在C++中調用C程序、索引的分類等技術問題,回答基本上要靠平時的積累和對知識的掌控能力。
.net程序員面試寶典
1.String str=new String("a")和String str = "a"有什么區別?
String str = "a"; 這個只是一個引用,內存中如果有“a"的話,str就指向它,如果沒有才創建如后還用到"a"這個字符串的話并且是這樣用: String str1 = "a"; String str2 = "a"; String str2 = "a"; 這4個變量都共享一個字符串"a" 而String str = new String("a");是根據"a"這個String對象再次構造一個String對象,將新構造出來的String對象的引用賦給str
2.判斷字符串變量str是否為空的一下三種方法哪個性能更優
a、str=="";b、str==String.Empty;c、str.Length==0;?答案是c;
3.string與String的區別
string、int是C#定義的類型,而String、Int32是.net類型即是CTS類型; string 是 .NET 框架中 System.String 的別名。string在編譯的時候會轉化為String類