高階 Java 面試通關知識點整理
1、常用設計模式
單例模式:懶漢式、餓漢式、雙重校驗鎖、靜態載入,內部類載入、列舉類載入。保證一個類僅有一個例項,並提供一個訪問它的全域性訪問點。
代理模式:動態代理和靜態代理,什麼時候使用動態代理。
介面卡模式:將一個類的介面轉換成客戶希望的另外一個介面。介面卡模式使得原本由於介面不相容而不能一起工作的那些類可以一起工作。
裝飾者模式:動態給類加功能。
觀察者模式:有時被稱作釋出/訂閱模式,觀察者模式定義了一種一對多的依賴關係,讓多個觀察者物件同時監聽某一個主題物件。這個主題物件在狀態發生變化時,會通知所有觀察者物件,使它們能夠自動更新自己。
策略模式:定義一系列的演算法,把它們一個個封裝起來, 並且使它們可相互替換。
外觀模式:為子系統中的一組介面提供一個一致的介面,外觀模式定義了一個高層介面,這個介面使得這一子系統更加容易使用。
命令模式:將一個請求封裝成一個物件,從而使您可以用不同的請求對客戶進行引數化。
建立者模式:將一個複雜的構建與其表示相分離,使得同樣的構建過程可以建立不同的表示。
抽象工廠模式:提供一個建立一系列相關或相互依賴物件的介面,而無需指定它們具體的類。
2、基礎知識
Java基本型別哪些,所佔位元組和範圍
Set、List、Map的區別和聯絡
什麼時候使用Hashmap
什麼時候使用Linkedhashmap、Concurrenthashmap、Weakhashmap
哪些集合類是執行緒安全的
為什麼Set、List、map不實現Cloneable和Serializable介面
Concurrenthashmap的實現,1.7和1.8的實現
Arrays.sort的實現
什麼時候使用CopyOnArrayList
volatile的使用
synchronied的使用
reentrantlock的實現和Synchronied的區別
CAS的實現原理以及問題
AQS的實現原理
介面和抽象類的區別,什麼時候使用
類載入機制的步驟,每一步做了什麼,static和final修改的成員變數的載入時機
雙親委派模型
反射機制:反射動態擦除泛型、反射動態呼叫方法等
動態繫結:父類引用指向子類物件
JVM記憶體管理機制:有哪些區域,每個區域做了什麼
JVM垃圾回收機制:垃圾回收演算法 垃圾回收器 垃圾回收策略
jvm引數的設定和jvm調優
什麼情況產生年輕代記憶體溢位、什麼情況產生年老代記憶體溢位
內部類:靜態內部類和匿名內部類的使用和區別
Redis和memcached:什麼時候選擇redis,什麼時候選擇memcached,記憶體模型和儲存策略是什麼樣的
MySQL的基本操作 主從資料庫一致性維護
mysql的優化策略有哪些
mysql索引的實現 B+樹的實現原理
什麼情況索引不會命中,會造成全表掃描
java中bio nio aio的區別和聯絡
為什麼bio是阻塞的 nio是非阻塞的 nio是模型是什麼樣的
Java io的整體架構和使用的設計模式
Reactor模型和Proactor模型
http請求報文結構和內容
http三次握手和四次揮手
rpc相關:如何設計一個rpc框架,從io模型 傳輸協議 序列化方式綜合考慮
Linux命令 統計,排序,前幾問題等
StringBuff 和StringBuilder的實現,底層實現是通過byte資料,外加陣列的拷貝來實現的
cas操作的使用
記憶體快取和資料庫的一致性同步實現
微服務的優缺點
執行緒池的引數問題
ip問題 如何判斷ip是否在多個ip段中
判斷陣列兩個中任意兩個數之和是否為給定的值
樂觀鎖和悲觀鎖的實現
synchronized實現原理
你在專案中遇到的困難和怎麼解決的
你在專案中完成的比較出色的亮點
訊息佇列廣播模式和釋出/訂閱模式的區別
生產者消費者程式碼實現
死鎖程式碼實現
執行緒池:引數,每個引數的作用,幾種不同執行緒池的比較,阻塞佇列的使用,拒絕策略
Future和ListenableFuture 非同步回撥相關
演算法相關:判斷能否從陣列中找出兩個數字和為給定值,隨機生成1~10000不重複並放入陣列,求陣列的子陣列的最大和,二分查詢演算法的實現及其時間複雜計算
3、其它
演算法:常用排序演算法,二分查詢,連結串列相關,陣列相關,字串相關,樹相關等
常見序列化協議及其優缺點
memcached記憶體原理,為什麼是基於塊的儲存
搭建一個rpc需要準備什麼
如果線上伺服器頻繁地出現full gc ,如何去排查
如果某一時刻線上機器突然量變得很大,服務扛不住了,怎麼解決
LUR演算法的實現
LinkedHashMap實現LRU
定義棧的資料結構,請在該型別中實現一個能夠找到棧最小元素的min函式
海量資料處理的解決思路
reactor模型的演變
阻塞、非阻塞、同步、非同步區別
Collection的子介面
jvm調優相關
zookeeper相關,節點型別,如何實現服務發現和服務註冊
nginx負載均衡相關,讓你去實現負載均衡,該怎麼實現
linux命令,awk、cat、sort、cut、grep、uniq、wc、top等
壓力測試相關,怎麼分析,單介面壓測和多情況下的壓測
你覺得你的有點是什麼,你的缺點是什麼
spring mvc的實現原理
netty底層實現,IO模型,ChannelPipeline的實現和原理
快取的設計和優化
快取和資料庫一致性同步解決方案
你所在專案的系統架構,談談整體實現
訊息佇列的使用場景
ActiveMQ、RabbitMQ、Kafka的區別
相關文章
- JAVA高階面試必過知識點彙總Java面試
- java知識點-高階Java
- jQuery面試知識點整理jQuery面試
- JAVA核心面試知識整理Java面試
- JVM知識點總覽:高階Java工程師面試必備JVMJava工程師面試
- Java容器相關知識點整理Java
- Vue 面試中常問知識點整理Vue面試
- PHP 面試知識點整理歸納PHP面試
- 自己整理的php面試知識點PHP面試
- JVM--Java核心面試知識整理(一)JVMJava面試
- JVM 面試知識整理JVM面試
- java面試知識點總結Java面試
- Java 基礎面試知識點Java面試
- Java 面試知識點總結Java面試
- Mysql知識樹整理【3】 ---高階MySql
- Android高階知識點Android
- Java高階架構面試知識點整理:基於 Hystrix 執行緒池技術實現資源隔離Java架構面試執行緒
- 搞定PHP面試 - HTTP協議知識點整理PHP面試HTTP協議
- (小白學JAVA之)Java高階特性知識點梳理Java
- [ Java面試題 ]Java 開發崗面試知識點解析Java面試題
- python面試中較常問及的知識點梳理---高階特性Python面試
- 面試知識點面試
- 搞定PHP面試 - 正規表示式知識點整理PHP面試
- 面試總結:Promise有關面試的知識點。面試Promise
- Java高階面試-面經Java面試
- 面試系列之View相關知識點面試View
- Java基礎面試知識點總結Java面試
- 常見Java面試知識點總結Java面試
- 高階 Java 必須突破的 10 個知識點!Java
- 高階Java必須突破的10個知識點!Java
- 網頁高階知識點(二)網頁
- Java面試通關要點彙總集Java面試
- 一些知識點的整理以及面試題記錄面試題
- Spring和Springboot相關知識點整理Spring Boot
- 前端面試知識點目錄整理前端面試
- java框架之Hibernate框架知識點整理。Java框架
- Java知識整理Java
- Python高階知識點學習(五)Python