從去年12月開始復習Java,做項目,視頻是看的黑馬的視頻,還可以吧,把Java基礎和SSM框架看了下,做了個小項目,然后看牛客網的中級項目課,做了一個健身頭條項目,接着就是刷題之路,建議把劍指Offer上的題多刷幾遍,有能力的可以把LeetCode也刷刷,然后多看一些好的博客,總結的真是超級棒,書籍方面的話,主要是深入理解Java虛擬機,並發編程的藝術或者Java並發編程實戰,TCP/IP詳解 卷1:協議,Spring源碼解析,高性能MySQL,算法,計算機操作系統,計算機網絡等。反正是開卷有益。由於自己比較菜,大廠基本是都是一面掛,遂投了一波中小公司,最終有個還不錯的offer,結束了艱辛的春招之路。其中新浪、金山雲和vipkid由於已經接受其他公司offer,沒有再面試了。
經過這次春招,感覺大廠更注重基礎,並且要求到源碼的深度,還是要多考量,多琢磨,小廠的話更側重項目一些,希望大家都能得到自己滿意的offer。
下面是幾個公司的面經。
百度
- 項目相關
- 異步隊列怎么實現
- 高並發情況下怎么辦
- java中數據結構
- concurrenthashmap源碼(分段鎖和CAS)
- hashmap與concurrenthashmap的區別
- 死鎖
- tcp/ip體系結構
- tcp三次握手,二次會發生什么
- HTTP/1.0與HTTP/1.1的區別
- 長連接和短連接
- 判斷鏈表有環
- hashset源碼
- 設計一種hashmap緩存
- 設計模式
- 取火柴問題
騰訊
- 項目相關
- 內部類
- static
- 類加載
- 內存泄漏
- GC
- 智力題
京東
- 項目相關
- HashMap是線程安全嗎?
- hashmap源碼
- Concurrenthashmap為什么線程安全?
- java如何實現線程安全
- 單例模式
- volatile
數太奇
- 項目相關
- SpringMVC過程
- 冒泡排序
- 快速排序
- 將200w數據去重排序
方正國際
- SpringBoot是什么
- redis里存放的是什么
- mysql和redis一致
- 注冊和登錄怎么實現的
- 密碼加密怎么實現的
- nginx的Session共享
- 異步怎么實現的
- redis持久化
- map有有序的嗎
東方暢享
- 項目相關
- dao層怎么實現
- spring中都用了哪些庫
- 接口怎么實現
佳龍集團
- 常見的數據結構介紹一下
- hashmap介紹一下
- 快排
- 冒泡
- 斐波那契數列
- 判斷回文數
- 約瑟環
- springmvc生命周期
- restful了解嗎
- 分布式緩存
長城軟件
- 登陸模塊怎么做的
- 項目部署在tomcat步驟
- tomcat啟動流程
- 介紹下redis
- 異步處理是怎么實現的
星宇聯合
- ==和equals的區別
- arrarylist和linkedlist區別
- synchronized
- 單例模式
- sql查詢
用友
- spring ioc用到的注解
- 未登陸用戶攔截
- sql左連接和右連接
- 消息隊列怎么實現的
- spring bean用到的注解
每日優鮮
- 快排
- sql左連接和右連接
- mysql的索引
- b+樹介紹一下
- redis的list是什么數據結構
- linux的常用操作
- mybatis的注解
- 多線程的實現
- 線程池的配置
- linux怎么查找一個文件中數據
小米
- 贊踩功能是怎么實現的
- 為什么贊踩要用消息隊列
- 消息隊列怎么實現的
- synchronized和volatile
- synchronized實現原理
- volatile可見性
- 線程池有哪幾種
- 具體怎么用
- 說下常用設計模式
- 單例模式在項目中有用到嗎
- 觀察者模式說一下
- get和post區別
- tcp三次握手
- rcp了解嗎
- 為什么不是兩次和四次握手
- jvm內存模型
- jvm垃圾收集器
- gc算法
- linux查找一個文件中的某個字
- linux的ping命令是什么
- linux常用的命令
- maven常用命令
- git常用命令
- mysql的引擎
- 各個引擎的區別
- innodb實現原理
- 異常的分類
- http了解多少
- https
- ca證書里有什么
- 滑動窗口和擁塞控制
- 長連接和短連接
- cookie和session區別
- cookie欺詐
- 最小字典序
滬江
- hashmap
- linkedlist
- 單例模式
- 快排
- json格式
- 多線程實現
- 線程池
- string可變嗎?
- final
- 登陸怎么實現的
- 如何判斷用戶已經登陸
- jdbc連接過程
借貸寶
- 登陸模塊怎么實現的
- mybatis映射
- springmvc用到的注解
- restful
- c中的指針是什么
- java中為什么沒有
- ajax
- 什么是異步
- mysql數據庫引擎
- innodb和myisam的區別
芯智引擎
- 說下你知道的數據結構
- 紅黑樹能寫出來嗎?
- 紅黑樹的特點
- b樹
- 圖在代碼中怎么表示
- 怎么求圖中兩節點最短距離
- 說下基於比較的排序有哪些
- 各個排序的時間復雜度
- 線程池
- 線程同步
- synchronized實現原理
- monitor實現原理
- osi七層模型
- 各層模型的協議
- java中集合類
- 集合類運用場景
- 操作系統,知道啥
- 頁面置換算法
- 進程線程
- 死鎖