1. 程式人生 > >珍愛網內推 秋招Java 一面二面

珍愛網內推 秋招Java 一面二面

  1. 自我介紹
  2. 介紹專案 (黨建網站)
  3. Java基礎 重寫與過載 類與介面 Object類的方法 hashCode() equals() Map get() ConcurrentHashMap 實現O(1)的時間複雜度 多執行緒 執行緒與程序區別 實現多執行緒的方式 start()和run()方法區別 wait()和sleep()區別 執行緒池的實現, 兩個引數 corePoolSize:核心執行緒數 maxPoolSize:最大執行緒數 當核心執行緒數達到最大時,新任務會放在佇列中排隊等待執行

Java中鎖 執行緒安全的類或者實現方式 ThreadLocal的應用場合,最適合的是按執行緒多例項(每個執行緒對應一個例項)的物件的訪問,並且這個物件很多地方都要用到。

對傳統的synchronize共享變數執行緒安全的問題進行比較 一個是鎖機制進行時間換空間,一個是儲存拷貝進行空間換時間。

JVM 記憶體分割槽 GC演算法 什麼情況導致JVM頻繁Full GC, 解決方法

框架 SpringMVC是什麼, 執行流程 1、前端控制器DispatcherServlet(不需要程式設計師開發) 作用接收請求,響應結果,相當於轉發器,中央處理器。 有了DispatcherServlet減少了其它元件之間的耦合度。

2、處理器對映器HandlerMapping(不需要程式設計師開發) 作用:根據請求的url查詢Handler

3、處理器介面卡HandlerAdapter 作用:按照特定規則(HandlerAdapter要求的規則)去執行Handler

4、處理器Handler(需要程式設計師開發) 注意:編寫Handler時按照HandlerAdapter的要求去做,這樣介面卡才可以去正確執行Handler 返回ModelAndView

5、檢視解析器View resolver(不需要程式設計師開發) 作用:進行檢視解析,根據邏輯檢視名解析成真正的檢視(view) 返回View

6、檢視View(需要程式設計師開發, jsp) View是一個介面,實現類支援不同的View型別(jsp、freemarker、pdf…) 填充模型資料, 返回HTML頁面給瀏覽器

資料庫 索引的種類以及資料結構, 使用索引查詢慢的解決方案 SQL 執行計劃: EXPLAIN

二面: (比較水) 自我介紹 介紹專案 網站訪問量大了, 效能優化 問了知道哪些排序演算法 叫我解釋堆排序的原理 手寫氣泡排序的程式碼, 沒錯就是冒泡 最後出了一個題: 給使用者生成1~10億之間隨機唯一且效能較好的序列號(正整數)