1. 程式人生 > >京東Java開發一面面經

京東Java開發一面面經

自我介紹

會問些與專業相關的問題(LZ數學專業,學渣沒答上來)

1、說說漢羅塔演算法

2、說說逆矩陣的應用

Java基礎知識

1、簡單介紹一下面向物件

     把一組資料結構和處理它們的方法組成物件(object),把相同行為的物件歸納為類(class),通過類的封裝

(encapsulation)隱藏內部細節,通過繼承(inheritance)實現類的特化(specialization)/泛化

(generalization),通過多型(polymorphism)實現基於物件型別的動態分派(dynamic dispatch)。

2、說說B樹的實現和在資料庫中的應用

      http://blog.csdn.net/xiaolaohu_zy/article/details/78049942

3、主鍵索引和組合索引哪個更快?為什麼主鍵索引比組合索引快

    我不知道 面試官給我講了講,大概就是因為主鍵索引不需要維護資料庫內部的樹形結構,而組合索引需要維護內部結構。

4、寫一個單例模式,並說說單例模式的缺點

      單例模式應該大家都會吧,有懶漢式和餓漢式兩種。(我寫時候還忘記加static了)

      缺點我只知道不能保證多執行緒下的應用

     後來我上網查了一下:

     優點:1、提供了對唯一例項的受控訪問

                 2、由於系統內只存在一個物件,可以節約系統資源,速與一些需要頻繁建立與銷燬的系統物件,無疑提高了系統性能

                 3、允許可變數目的例項

    缺點:1、由於單例模式中間沒有抽象層,單例模式的擴充套件非常困難。

                2、單例類指責過重,一定程度上違背了“單一職責”原則

                3、濫用單例會帶來負面作用,如,將資料庫連線池設計為單例類,可能導致連線程式過多,出現溢位現象;如果單例出的物件

                       長時間沒有用則會導致被回收,出現物件丟失。

                4、懶漢式是時間換空間,餓漢式是空間換時間

                5、不加同步的懶漢式是執行緒不安全的,但是加了同步會降低訪問速度(可以用雙重檢查加鎖volatile)

5、講講GC和內部實現的演算法

      我只知道是垃圾回收器,採用計數演算法,看有沒有物件引用,沒有的話就被回收。具體可以看

       http://blog.csdn.net/xiaolaohu_zy/article/details/78048746

6、你知道悲觀鎖與樂觀鎖嗎?

      不知道。。以前看過,忘記了。

      悲觀鎖:

      是指假設併發衝突會發生,所以是否發生都會使用鎖機制;它會鎖住讀取的記錄,防止其他事務讀取和更新這些記錄,會導致其他事務一直阻塞,

      悲觀鎖獨享佔用資源,悲觀鎖可以使用Repeatable Read事務,它完全滿足悲觀鎖的要求。

 樂觀鎖:

       不會鎖住任何東西,完全是應用系統層面的東西;如果使用樂觀鎖,資料庫必須加版本欄位,來記錄當前記錄被修改的次數。

7、講講怎樣實現同步?synchronize的內部實現方法

      沒有說出來

       synchronize(同一個資料){}:就是N條執行緒同時訪問同一個資料

       public synchronize 返回型別 方法名(){  }:同步方法,使用java.lang.object中的三個方法:wait();notify();notifyAll()

       synchronize的實現原理:

synchronize可以放在方法前面、類的前面、物件前面。

       同步程式碼塊是使用monitorenter和monitorexit指令實現的,同步方法依靠的是方法修飾符上

       的ACC_SYNCHRONIZED標誌隱式實現的。

       任何一個Java物件都有一個monitor與之關聯,monitor是由C++的ObjectMonitor實現的

相關推薦

京東Java開發一面

自我介紹 會問些與專業相關的問題(LZ數學專業,學渣沒答上來) 1、說說漢羅塔演算法 2、說說逆矩陣的應用 Java基礎知識 1、簡單介紹一下面向物件      把一組資料結構和處理它們的方法組成物件(object),把相同行為的物件歸納為類(class),通過類的封裝 (

京東大資料方向-Java方向-實習一面(offer沒去。。。)

去總部面的,先做了一套筆試題 一面:(順序可能不對) 1.先講了一下筆試上的一道演算法題,不難,就是找出兩個數組合並後的中位數,總體思路就是,比較大小,找下標,但需要注意的是找到了中位數就可以停止迴圈了。 2.hashmap問的超級細,建議大家仔細看看,後來也問了chm

第一篇部落格:京東集團java研發實習

注:今天在牛客網看了一位大牛的面經,也可以說是2018年的總結。深有感觸,再看看我的部落格簡直是浪費了部落格這個交流平臺,所以也準備追尋大牛的腳步,分享和記錄一些學習中學到的知識和心得。 大牛面經傳送門: https://www.nowcoder.com/discuss/137593?t

2019騰訊校園招聘開發一面+二+HR),已拿offer

2019騰訊校園招聘開發崗面經(一面+二面+HR面) 背景: 華為實習結束前兩天,突然接到騰訊的郵件,邀請我現場面試,但面試前需要我做道題,這道題的回答內容將作為一面時的溝通話題(當時整個人是懵的,咋還有這操作)。暑期實習投的騰訊是安卓崗,華為實習期間是軟體開發崗,最後拿到騰訊off

騰訊Java開發5:Treemap+同步鎖+MVCC+快取+慢查詢+雪崩

  一面(電話) 說說對JVM的理解 treemap和hashmap有什麼區別? Java多執行緒的的5大狀態圖流轉 mysql主鍵和唯一索引的區別 說說最近的專案 如何實現session共享,用redis如何實現 快取擊穿的概念和解

京東後臺一面

4月13號 16:00  40分鐘自我介紹你們信管出了程式語言課都學啥?(經濟學、管理學)IT專案管理學過嗎?講講唄(??十大知識領域??)封裝繼承多型詳細介紹,舉個多型的例子。有抽象方法一定是抽象類嗎?抽象類一定有抽象方法嗎?list和set的區別。有沒有有序的set?(有

平安科技Java開發(2018年12月)

上週接到平安HR邀約面試的電話,約在上週6,過去面試。因為之前面過平安壽險,所以 應該是簡歷被撈了一下。說是現場直接走完 面試流程,於是就去了。現場共2輪技術面+1輪HR面,3輪面試過了的話,後面會做一份IQ和EQ測試題(這個測試掛了,就GG,而且3個月不 能再面平安任何崗位,要認真點

京東一面

參加了京東的京東雲部門的一面,面試問題如下:1、聊專案,然後延展出了一些負載均衡、雜湊一致性、資料熱備、TCP與UDP的問題;2、聊了聊執行緒池,從執行緒池使用原因到JUC中執行緒池的實現細節;3、如何

網易考拉海購Java後臺開發實習-(已拿offer)

一面(23min) 自我介紹 專案中最自豪的部分 也沒什麼太自豪的,就是在移動端開發的時候不存在cookie和session,然後用redis存了一下驗證碼感覺還不錯。 講一講ArrayList和LinkedList ArrayList底層實現是陣列,並

京東Java開發實習生一面

2017/4/15 這次面試還是比較有紀念意義的,是我步入職場的第一次面試,面試過程大概30分鐘,在這次面試中確實發現了自己好多的不足,所以做一次小總結。 面試前 原本通知我要在下午3點面試,然後我提前一個小時到的,掃完碼簽到後,便坐在椅子上等候,期間

頭條後臺開發實習崗一面

1. JVM的記憶體模型,垃圾回收機制.2. 垃圾回收時為什麼不可避免stop the world3. 什麼樣的物件才算是垃圾物件,有沒有引用指向物件是充分條件還是必要條件4. 垃圾回收的演算法,複製演算法的優點,為什麼新生代採用這種演算法5. 哪些課程學的比較好,說了資料結

阿里巴巴2016前端開發實習生面試一面(總結)

  作為一名大三的計算機專業web前端開發學生談談對於阿里巴巴的面試的經歷,並且做一個總結!供大家以後參考! ** 大三學生是否找實習?答案是必須的。不論什麼公司,招聘就投,筆試能答就答,答完筆試

大型互聯網公司Java開發崗位試題歸類!

項目 block 高並發 回收機制 開源 泄露 ash pst 文件 ?一、Java基礎 1. String類為什麽是final的。 2. HashMap的源碼,實現原理,底層結構。 3. 說說你知道的幾個Java集合類:list、set、queue、map實現類咯。。。

Java開發崗位試題整理

線程數 本地 簡單 線程間通信 syn 低耦合 刪除 不同方法 ola 一、Java基礎 String類為什麽是final的 HashMap的源碼,實現原理,底層結構。 說說你知道的幾個Java集合類:list、set、queue、map實現類。 描述一下A

Java 開發必備試題詳解(技術+人事)

作為一名程式猿,無論新手還是老司機,面試求職始終是你需要直面的一件事情。首先梳理自己的知識體系,針對性準備,會有事半功倍的效果。我們往往會把重點放在技術上,而忽略了人事部分,實際上人事面試也會影響到最終的結果,把每一個環節做好,最終的結果自然不會差。 本 Chat 就為大家提供了一份詳盡的 Jav

用友一面

自我介紹 JVM    從記憶體模型到物件的建立到GC到常見的垃圾收集器到類載入機制。 一個java類被編譯成.class檔案,這個class檔案的結構 資料庫的鎖是什麼,主要用來幹什麼 資料庫的事務是什麼,有什麼特點 資料庫的索引分為哪些 介面和抽象類的區別 你瞭解的設計模式有哪些,具體講一下

VIPKID一面

專案中分頁查詢是怎麼做的?如果從資料庫中查詢100W條資料,如何實現分頁? 專案中條件查詢和模糊查詢是怎麼做的?還是同樣的問題,從資料庫100W條資料中模糊查詢怎麼做? 為什麼說這個專案是秒殺系統而不是普通商城?為什麼想著要做秒殺系統? 秒殺系統專案架構? 秒殺下單邏輯?(RabbitMQ消費者監聽,pus

網易互娛C++崗一面(涼麵)

前言   我報的網易互娛的提前批遊戲研發工程師C++崗,這個過程其實挺坎坷的,8月初跟著導師去黑龍江佳木斯開會,中途忽然間接到通知要筆試,從會場逃出來在賓館做的遠端筆試題,做的不是特別好,4道題只做對了一道半,沒想到還是過了筆試,感覺網易互娛的筆試不怎麼刷人。但是面試就比較全面了……

2017秋招 百度前端一面

8月電話面試,一面基本是基礎,忘記那個部門了 react用的怎樣? react和vue的區別 mvc和mvvm的區別 為什麼選擇mvvm sass的優勢 webpack的用途 es6瞭解哪些 設計模式瞭解哪些 let和var的區別 模組化了解

騰訊天美后端2018實習一面

騰訊天美后端2018實習面經 看了那麼多面經,我最大的收穫就是認識到自己的基礎很薄弱。真的是什麼都問的。學習才是最重要的。 目前進行到一面結束,我會持續更。 簡歷內推 學長都是願意幫助你的,他推了是有好處拿的,所以簡歷要先讓學長參謀一下。 我寫的目