前言
我自己是雙非本科畢業后在老東家干了兩年多,老東家算是一家”小公司”(畢竟這年頭沒有 BAT 或 TMD 的 title 都不好意思報出身),畢業這兩年多我也沒有在大廠待過,因此找坑的時候是非常非常虛的,迫于心慌,我好好思考了一陣來給自己打氣,當時真正找坑和準備面試的程序大概分為這幾個階段:

面試準備
- 反思:自己是不是真的要離職,假如不離職,在老東家接下來應該做什么才能繼續提升?
- 定位:我在硬性技能(編碼、架構)上的長處在哪?我在軟技能(溝通,團隊)上的長處在哪?這步順帶寫了簡歷
- 尋找平臺:哪些平臺能同時滿足:1、有挑戰有上升空間;2、符合我的定位方向;3、團隊氛圍和老東家一樣好
- 找人內推:基本都是在 v2 上找的
當你真的決定要跳槽面試的時候就得最自己的知做一個小總結了,找出自己的技術短板去彌補,把自己的學習路線給整理出來會事半功倍,下面附上我自己的復習路線,

JVM學習路線
就一個JVM就能梳理出這么多知識點,從而可以看出總結自己的復習路線是一個多么重要的事情,這里只是展示我總結的一部分,整個路線包括原始碼框架,并發專題,JVM性能調優,mysql,分布式,微服務等等,我都總結出了每一小步的復習路線,需要這份復習路線的:三連這篇文章,然后后臺私信【java】或者看下方直接獲取!

下面是我自己根據上面的復習路線圖總記得復習檔案,檔案內容包括:資料結構與演算法,JVM記憶體結構、垃圾回收器、回收演算法、GC、并發編程相關(多執行緒、執行緒池等)、NIO/BIO、性能優化、設計模式、Spring框架:分布式相關:Redis快取、一致Hash演算法、分布式存盤、負載均衡等,微服務以及Docker容器等,獲取方式在文末
下面為部分的內容和面試題展示
JVM
- java中會存在記憶體泄漏嗎,請簡單描述,
- 64 位 JVM 中,int 的長度是多數?
- Serial 與 Parallel GC 之間的不同之處?
- 32 位和 64 位的 JVM,int 型別變數的長度是多數?
- Java 中 WeakReference 與 SoftReference 的區別?
- JVM 選項 -XX:+UseCompressedOops 有什么作用?為什么要使用
- 怎樣通過 Java 程式來判斷 JVM 是 32 位 還是 64位?
- 32 位 JVM 和 64 位 JVM 的最大堆記憶體分別是多數?
- JRE、JDK、JVM 及 JIT 之間有什么不同?
- 解釋 Java 堆空間及 GC?

Redis
- 什么是 Redis?
- Redis 與其他 key-value 存盤有什么不同?
- Redis 的資料型別?
- 使用 Redis 有哪些好處?
- Redis 相比 Memcached 有哪些優勢?
- Memcache 與 Redis 的區別都有哪些?
- Redis 是單行程單執行緒的?
- 一個字串型別的值能存盤最大容量是多少?
- Redis持久化機制

Kafka
- 請說明什么是Apache Kafka?
- 請說明什么是傳統的訊息傳遞方法?
- 請說明Kafka相對傳統技術有什么優勢?
- 在Kafka中broker的意義是什么?
- Kafka服務器能接收到的最大資訊是多少?
- 解釋Kafka的用戶如何消費資訊?
- 解釋如何提高遠程用戶的吞吐量?
- 解釋如何減少ISR中的擾動?broker什么時候離開ISR?

Spring Cloud
- 什么是 Spring Cloud?
- 使用 Spring Cloud 有什么優勢?
- 服務注冊和發現是什么意思?Spring Cloud 如何實作?
- 負載平衡的意義什么?
- 負載平衡的意義什么?
- 什么是 Hystrix 斷路器?我們需要它嗎?
- 什么是 Netflix Feign?它的優點是什么?
- 什么是 Spring Cloud Bus?我們需要它嗎?

尤其是Spring Cloud這一塊,面試幾乎必問,SpringCloud 是分布式微服務架構下的一站式解決方案,是各個微服務架構落地技術的集合體,俗稱微服務全家桶,
MyBatis
- 什么是 Mybatis?
- Mybaits 的優點
- MyBatis 框架的缺點
- MyBatis 框架適用場合
- MyBatis 與 Hibernate 有哪些不同?
- 當物體類中的屬性名和表中的欄位名不一樣 ,怎么辦 ?
- 模糊查詢like陳述句該怎么寫?

Java反射
- 除了使用new創建物件之外,還可以用什么方法創建物件?
- Java反射創建物件效率高還是通過new創建物件的效率高?
- java反射的作用
- 哪里會用到反射機制?
- 反射的實作方式
- 實作Java反射的類
- 反射機制的優缺點
- 獲取 Class 物件有幾種方法

面試總結
一些經驗:
- 簡歷里寫了的專案,以及熟練程度在”掌握”以上的領域與中間件要好好準備,當面試官問你一個偏門的問題時,他內心其實也沒希望你能答上來,而當面試官問你簡歷上涉及的問題時,假如你答不上來,那面試官就覺得這個人要么是眼界太低,會了一點就覺得自己掌握了,要么是簡歷造假在胡吹,這兩種都非常不利;
- 在上一條的基礎上,可以準備一個最得意的專案,在簡歷上和面試程序中引導面試官往這塊聊;
- 面試前心里可以準備一個方法論:明確面試官想招怎樣的人有哪些特質,在面試程序中努力表現出這些特質,這聽起來是句正確的廢話,但面試的程序不可控因素太多,有一個清晰的目標在腦子里能幫你在手足無措時想到說什么,舉個例子,有一輪中面試官問我有什么問題時,我就問貴司的對應崗位會面臨哪些技術挑戰(當然要先說清楚這不是在質疑他們沒有挑戰,只是自己渴望挑戰);
最后
有需要文中以上分享的全部面試題+復習路線圖的完整版的小伙伴們注意啦:掃描下方即可免費獲取!

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/188014.html
標籤:其他
