艾森哲面試 Accenture

早上8點45到達軟件園24號樓11層,本來時9點開始面試,一直等到9點30,面試官才匆匆來到。通知我們到會議室面試。

面試開始才知道是羣面+英語面:

開始50分鐘全部用英語

1.自我介紹(兩分鐘,自我評價):

我覺得重要的是   第一步,介紹自己;

第二步,說技術,讓面試官知道自己精通XXXX,熟悉XXXX,瞭解XXXX,對XXXX在XXXX環境下的XXXX有深入的認識。

    第三步,說一些做過的項目,做過什麼樣的項目?給哪家公司做的?多大的體量?最終使用人羣是多少?這個項目給我帶來的經驗是什麼?是否能夠積累一定的行業資源?

2.面試官用英語問一些問題,逐個回答(感覺這個應該是考察你的性格,當遇到困難時會怎樣解決)

 第一個問題,你在做項目或者學習生活中遇到過最大的issue是什麼,最後怎麼解決的;


最後50分鐘用中文回答

3.面試官開始問技術上的一些問題,自由回答,別人接着你的補充,自己也可以補充。(考察技術能力)

第一個問題,封裝是什麼,怎麼理解封裝;(引出問題,什麼是高內聚低耦合)


第二個問題,繼承是什麼;

繼承是面向對象中一個非常重要的特性。通過繼承,子類可以使用父類中的一些成員變量與方法,從而能夠提高代碼的複用性,提高開發效率。

幾個特性:1.Java只用一個父類,不支持多重繼承;

2.子類只能繼承父類的非私有成員變量和方法;

3.當子類中定義的成員變量和父類中定義的成員變量同名,子類會覆蓋不會繼承;

4.子類中方法與父類的方法有相同方法名,相同參數與類型是,子類將會覆蓋父類的方法,而不會繼承。



第三個問題,怎麼理解多態;

多態是面向對象程序設計中代碼重用的一個重要機制,它表示當同一個操作作用在不同對象時,會有不同的語義,從而會產生不同的結果,如“3+4”和“3”+“4”。

Java中主要體現在

1.方法的覆蓋;(運行時多態)


2.方法的重載。(編譯時多態)



第四個問題,連接數據庫的步驟;

1.加載JDBC驅動器;

2.加載JDBC驅動,註冊到DriveManage;

3.建立數據庫練級,取得Connection對象;

4.建立Statement對象或PreparedStatement對象;

5.執行SQL語句;

6.訪問SQL語句;

7.依次關閉這些對象。


第五個問題,連接Oracle和連接MySQL有什麼區別;


4.面試官針對個人提問。(考察項目經驗)

第一個問題,struts1和struts2的區別;

http://blog.csdn.net/john2522/article/details/7436307

第二個問題,什麼是面向方面編程;

http://blog.csdn.net/liuweitoo/article/details/8166503

第三個問題,Spring的核心機制是依賴注入,體現在哪些方面;

具體含義:當某個角色(可能一個Java實例,調用者)需要另一個角色(另一個Java實例,被調用者)的協助時,在 傳統的程序設計過程中,通常由調用者來創建被調用者的實例。但在Spring裏,創建被調用者的工作不再由調用者來完成,因此稱爲控制反轉;創建被調用者 實例的工作通常由Spring容器來完成,然後注入調用者,因此也稱爲依賴注入

第四個問題,你寫過最複雜的算法是什麼;

動態規劃:動態規劃算法通常用於求解具有某種最優性質的問題。在這類問題中,可能會有許多可行解。每一個解都對應於一個值,我們希望找到具有最優值的解。動態規劃算法與分治法類似,其基本思想也是將待求解問題分解成若干個子問題,先求解子問題,然後從這些子問題的解得到原問題的解。與分治法不同的是,適合於用動態規劃求解的問題,經分解得到子問題往往不是互相獨立的。若用分治法來解這類問題,則分解得到的子問題數目太多,有些子問題被重複計算了很多次。如果我們能夠保存已解決的子問題的答案,而在需要時再找出已求得的答案,這樣就可以避免大量的重複計算,節省時間。我們可以用一個表來記錄所有已解的子問題的答案。不管該子問題以後是否被用到,只要它被計算過,就將其結果填入表中。這就是動態規劃法的基本思路。具體的動態規劃算法多種多樣,但它們具有相同的填表格式。

第五個問題,你覺得在衆多排序算法中,哪種算法的速度最快;

快速排序和歸併排序,不過排序的快慢和你的數據特徵有關係,比如你的數據還是本來就是排好序的,那你不排序就是最快的了。查找還和數據結構有關係,是無序數組,還是有序數組,還是hash表,還是二叉樹。

5.大家自由向面試官提問。(與人的溝通)

發佈了40 篇原創文章 · 獲贊 0 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章