【面經】記阿里巴巴校招一輪電話面試

本文為菜鳥窩作者 吳威龍 的分享
菜鳥窩是專業的程序猿在線學習平臺,提供最系統的 Android 項目實戰課程
如需轉載,請聯系菜鳥窩公眾號(cniao5),并注明出處。

[TOC]

前 言

3 月 6 日成功內推進入阿里巴巴校園招聘系統,內心頗為激動,但深知自身能力仍欠缺,所以踏實耕耘提升自身實力。

3 月 9 日完成在線測評和在線編程題,在線測評主要考察:快速閱讀能力、歸納總結能力、速算能力、突發事件處理能力,就是所謂的綜合素質能力吧;在線編程題只有一道,難度算中等吧,常去牛客網刷題的同學應該都比較有思路去解決編程題。

當天晚上就接到阿里巴巴面試官的電話,由于第一次電話面試,雖然小心臟有點緊張,但是也沒有忘記記錄下面試官問到的幾個問題,本文權當記錄下面試經歷,為自己總結經驗的同時也供各位準備校園招聘的同學參考。

電話面試

** 自我介紹**

前言

這里我就是簡單介紹了下自己在校的經歷,讓面試官對自己有個大致的了解。
當然,面試之前,面試官都有了解我們的簡歷以及在阿里巴巴校園招聘系統填寫的信息。

自我介紹是向別人展示自己的一個重要手段,自我介紹好不好,甚至直接關系到給別人的第一印象的好壞及之后發展的順利與否。

聽過“首因效應”木有,就是第一印象效應,面試官極有可能根據面試開始的幾分鐘得到的印象,便已決定了面試的結果。

所以,把握住面試的自我介紹環節,絕對是面試成功的必要手段。

直接讓應聘者描述自己的能力、特點和個性的問題,主觀意識太強,有可能是不真實的。

因此,面試官當然不會僅從表面去判斷,他經常帶著要進一步考察的目的而認真聽著。

下面介紹下一般準備 自我介紹 的時候面試官對應聘者的考察內容以及應聘者需要重點突出的關鍵點(校招、社招同樣)

考察內容[1]:

  • 考察應聘者的邏輯思維能力、語言表達能力及提煉概括能力。
  • 考察應聘者口述內容與遞交簡歷是否一致,表達口吻是否真誠自信。
  • 考察應聘者的時間掌控能力,對介紹內容的時間分配是否得當。
  • 擴展了解,通過行為問題進一步考察應聘者的工作經歷及專業技能。

當了解了"自我介紹"這個環節的目的,我們就知道了如何去準備好這個環節。

自我介紹時的內容構成并沒有一定固定的模式,只要能夠主動、全面地表達自己則為佳。可把握重點突出的原則

重點突出[1]

  • 你過去做過什么?(經歷、技能、業績)

1.突出經歷: 重點描述放在近 2 年,或是與現應聘崗位同行業性質的工作經歷上。

2.突出技能: 通過具體事例說明,在工作經歷或項目中表現的專業知識、核心技能。

3.突出數字: 呈現個人業績,多介紹與應聘崗位工作內容相關、類似的業績。

  • 你現在來做什么?(動機、匹配、選擇)

1.職業切換: 即跳槽的原因,客觀真誠,從職業規劃方面出發。

2.崗位匹配: 推銷自己,從對方的需求出發,以招聘要求為基礎,展現你的優勢與匹配度。

3.選擇原因: 對應聘公司的了解,包括企業文化、規模、產品、渠道等等,表達你的關注。

  • 你將來準備做什么?(目標、貢獻、期望)

1.發展目標: 轉換環境后想要達到的目標,要具體、合理,近期內可達成。

2.企業貢獻: 你能帶來什么新的東西,你能注入什么新的理念。

3.期望未來: 你期望得到的是什么,你渴望的平臺是怎樣的。

** 聊一下以往項目**

當時第二個問題就是問:讓我印象深刻的一個項目以及從中的收獲,這也是阿里巴巴校園招聘系統里面回答過的一個開放性問題:

2.請介紹你參與的印象最深刻的一個項目,為什么? 并且介紹你在項目中的角色和發揮的作用:

印象最深刻的一個項目是大一參加的物聯網比賽,這個比賽也是進入大學以來參加的第一個比賽;從報名參賽的懵懂到商討參賽作品的困惑再到決定最終方案的堅定,這個過程考驗著我們每一個成員的耐心以及創造力和想象力。

本次比賽的作品是:基于Zigbee的溫室大棚監控系統

我擔任這次的比賽的隊長,根據每個成員的興趣以及能力進行項目分工,我自己負責 PC 端監控系統。由于當時只學過 C++,查閱相關文獻得知 PC 端一般是使用 QT、C#、MFC 等桌面程序,又由于比賽時間緊急,最終選擇使用 MFC 來開發本系統的 PC 端監控軟件。雖然選擇了 MFC,但是我根本沒接觸過 MFC,盡管如此,我依然堅信我可以在短時間內學習使用 MFC 以及把學到的運用在這次的比賽中。

半個月的時間,我邊學 MFC 邊開發監控系統,同時還得和負責硬件的隊友協商數據包格式,調試監控系統和硬件設備的通信。

第一次在短時間內快速的學習一項沒接觸過的技術 MFC,加上比賽時間得壓迫感,然而最終實現目的,這讓我印象很深刻,讓我知道我有快速學習的能力。

也正是這次比賽經驗,我不再為自己設限,我相信只要敢想,沒什么是不可能的,這為我后來的學習提供了很大的幫助,至少在信心上。

此外,比賽過程也培養了我查閱文獻的能力,明白了團隊溝通的重要性。

面試時候回答的和上面差不多。

** 面試官提出的問題**

1 談一談 final 修飾符

可以修飾 class、field、method 等,被 final 修飾的類不可繼承,被 final 修飾的 field 不可修改,被 final 修飾的 method 不可重寫。

2 集合類的特性

面試的時候只回答了如下:

List: 元素有序  可重復
set: 存儲無序的,不可重復的元素 相當于高中的“集合”概念
map: map 的主要實現類是 hashmap
HashMap 是基于哈希表實現的,每一個元素都是一個 key-value 對;

擴展問題

  1. hashMap 底層實現原理
  2. hashMap 存取數據時間復雜度

3 String 類能繼承嗎

不可以,因為 String 類是被 final 修飾符修飾的,所以不能被繼承。

4 2x8 運算提高速率

效率上看,使用移位指令有更高的效率,因為移位指令占 2 個機器周期,而乘除法指令占 4 個機器周期。

從硬件上看,移位對硬件更容易實現,所以會用移位,移一位就乘 2,這種乘法當然考慮移位了。

移位操作指令是一組經常使用的指令,屬于匯編語言邏輯指令中的一部分,它包括移位指令(含算術移位指令、邏輯移位指令),循環移位指令(含帶進位的循環移位指令),雙精度移位指令三大類。其功能為將目的操作數的所有位按操作符規定的方式移動 1 位或按寄存器 CL 規定的次數(0~255)移動,結果送入目的地址。目的操作數是 8 位 (或 16 位)的寄存器數據或存儲器數據。

5 單例模式,有什么類是單例

面試官問,有什么類是單例的,我真心想不起來哪些是單例類,但是我自己會使用單例模式進行實際開發,所以就簡要介紹下單例模式的使用。
查了下,JDK 中的單例類有:

  • java.lang.Runtime 類
  • java.lang.reflect.Proxy 類

6 線程調度

這里就主要問多線程調度、操作系統線程相關的概念問題。

多線程有兩種實現方法,分別是繼承 Thread 類與實現 Runnable 接口
同步的實現方面有兩種,分別是 synchronized 實現互鎖,wait 與 notify 實現線程通信。

sleep() 方法執行后線程進入阻塞狀態:阻塞狀態是需要外界激活,可能是時間, 可能是滿足某一條件,他才能激活運行,就算 CPU 有空閑,也需要滿足條件才會執行。

yied() 方法執行完后線程進入就緒狀態:就緒狀態是只要 CPU 有空閑隨時都可以執行,處于就緒狀態

Thread 類的 setPriority 函數可以設置優先級。

7 java 中有內存泄露嗎

java 理論上是不存在內存泄露,因為有垃圾回收器(GC)對內存進行釋放。

實際上,Java 也存在內存泄露,原因:主要是一些對象雖然不在被使用,但他們依然被引入(例如被長生命周期對象引用);

8 垃圾回收機制

什么情況下無法回收對象

主要是一些對象雖然不在被使用,但他們依然被引入(例如被長生命周期對象引用);
android 中 比如,靜態類中有 activity 變量
靜態變量的生命周期和應用程序一致。

9 有 NDK 開發經驗不

由于只是簡單的使用 NDK 開發了“Hello World”,所以直接回答面試官說自己沒經驗,只是簡單運行過 DEMO。

10 靜態變量、成員變量

成員變量 屬于對象,所以也稱為實例變量。
靜態變量 屬于類,所以也稱為類變量。

成員變量 存在于堆內存中。
靜態變量 存在于方法區中。

成員變量 隨著對象創建而存在,隨著對象被回收而消失。

靜態變量 隨著類的加載而存在,隨著類的消失而消失。

成員變量 只能被對象所調用 。
靜態變量 可以被對象調用,也可以被類名調用。
所以,成員變量 可以稱為對象的特有數據,靜態變量 稱為對象的共享數據。

注意:靜態方法中只能調用靜態變量,不能調用非靜態變量
因為類初始化的時候先加載靜態方法,但是非靜態變量這時候還沒初始化,所以編譯就會報錯。

11 Excption 與 Error 區別

  • Error 表示系統級的錯誤和程序不必處理的異常,是恢復不是不可能但很困難的情況下的一種嚴重問題;比如內存溢出,不可能指望程序能處理這樣的狀況;

  • Exception 表示需要捕捉或者需要程序進行處理的異常,是一種設計或實現問題;也就是說,它表示如果程序運行正常,從不會發生的情況。

12 子類能重寫父類的構造函數嗎

子類 不可以 重寫 父類 的 構造方法,因為構造方法是父類特有的,子類根本繼承不了父類的構造函數,所以子類不可以重寫父類的構造方法。

但是可以使用關鍵字 super 調用父類的構造方法。

13 四個權限修飾符

這里寫圖片描述

14 hashMap 存儲的時間復雜度

這個問題問答的不好,因為沒有了解過這個,面試后 google 了一下這個問題,似乎網上關于這個問題的介紹也很少:

HashMap 是基于哈希表的,在 O(1) 跟 O(n) 之間,HashMap 中 get(Object key) 時間復雜度是 O(1),
TreeMap 是基于平衡二叉樹的,為 O(logn) ;C++ 中是 log2(N)

15 堆、棧、方法區

Java 程序運行時的內存分配策略有三種,分別是靜態分配,棧式分配,和堆式分配;對應的,三種存儲策略使用的內存空間主要分別是靜態存儲區(也稱方法區)、棧區和堆區。

靜態存儲區(方法區):主要存放靜態數據、全局 static 數據和常量。這塊內存在程序編譯時就已經分配好,并且在程序整個運行期間都存在。

棧區 :當方法被執行時,方法體內的局部變量(其中包括基礎數據類型、對象的引用)都在棧上創建,并在方法執行結束時這些局部變量所持有的內存將會自動被釋放。因為棧內存分配運算內置于處理器的指令集中,效率很高,但是分配的內存容量有限。

堆區 : 又稱動態內存分配,通常就是指在程序運行時直接 new 出來的內存,也就是對象的實例。這部分內存在不使用時將會由 Java 垃圾回收器來負責回收。

總結

第一次面試,大概聊了 40 分鐘,整個過程表現得略緊張。

面試官問的問題基本都是 java 基礎、多線程、垃圾回收等重要且必須掌握的知識點。

總體感覺回答的不是很好,面試準備的不夠充分,再接再厲吧,通過這次電話面試,明白務實基礎才是最重要的。

以上列出的面試問題的回答并不完善,只是簡練的作答而已,建議根據這些問題查閱更多的資料深入學習各個知識點。

參考文獻:

[1]面試時做好自我介紹的重要性


更多內容,請關注菜鳥窩(微信公眾號ID: cniao5),程序猿的在線學習平臺。 歡迎勾搭小助手(lov730)加入高端技術交流群*
轉載請注明出處,本文出自菜鳥窩,原文鏈接:http://www.cniao5.com/forum/thread/c19357aa0ecf11e79be100163e0230fa

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,501評論 6 544
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,673評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,610評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,939評論 1 318
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,668評論 6 412
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 56,004評論 1 329
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 44,001評論 3 449
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,173評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,705評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,426評論 3 359
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,656評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,139評論 5 364
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,833評論 3 350
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,247評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,580評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,371評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,621評論 2 380

推薦閱讀更多精彩內容

  • 從三月份找實習到現在,面了一些公司,掛了不少,但最終還是拿到小米、百度、阿里、京東、新浪、CVTE、樂視家的研發崗...
    時芥藍閱讀 42,339評論 11 349
  • 1. Java基礎部分 基礎部分的順序:基本語法,類相關的語法,內部類的語法,繼承相關的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,737評論 18 399
  • 六月份目標:推薦15個B 本月新入會:3 名單:0 推薦:0 溫暖:溫暖了4位朋友 跟進:跟進了一部分 感受:不停...
    周曼Melaleuca閱讀 108評論 0 0
  • 【在此閱讀其他章節】 【寫在前面的話】 抱歉先插播幾句廢話。這次發的是《秘術師》序章部分的最后一回。本來我計劃的是...
    坑爹堂閱讀 886評論 4 5
  • 1.當別人誹謗你,說你壞話的時候如果你聽進去了,你就是小人,別人罵你是你需要,而你可以不必接受,自然就會反彈。 2...
    某某喲閱讀 429評論 0 0