首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

Java 筆試知識點總結(第一期):高頻考點速覽

     編輯:Java 綜合教學

Java 筆試知識點總結(第一期)

整理了 Java 校招、社招筆試中高頻出現的核心知識點,涵蓋基礎語法、集合框架、併發編程、JVM、框架原理五大模塊,適合面試前快速回顧。

一、Java 基礎與語法

  • 基本類型 vs 包裝類:自動拆裝箱陷阱、緩存範圍(-128~127)、== 比較引用地址。
  • String 不可變性:+ 拼接底層 StringBuilder、常量池機制、intern() 作用。
  • equals & hashCode 契約:重寫規則、HashMap/HashSet 依賴關係。
  • 異常體系:Checked vs Unchecked、try-with-resources、自定義異常最佳實踐。
  • 泛型擦除:類型擦除原理、通配符 <? extends T> / <? super T> PECS 原則。

二、集合框架

  • ArrayList vs LinkedList:擴容機制、隨機訪問 vs 插入刪除性能、fail-fast 機制。
  • HashMap 核心:JDK 1.7 數組+鏈表 → 1.8 紅黑樹化、擴容死循環、resize()、putVal() 流程、負載因子 0.75 取舍。
  • ConcurrentHashMap:1.7 Segment 分段鎖 → 1.8 CAS + synchronized + 紅黑樹、size() 計算方式變化。
  • Set 實現:HashSet(底層 HashMap)、LinkedHashSet(有序)、TreeSet(紅黑樹、自然序/定製序)。

三、併發編程

  • 線程狀態:NEW、RUNNABLE、BLOCKED、WAITING、TIMED_WAITING、TERMINATED 流轉。
  • synchronized 進階:對象鎖/類鎖、鎖升級(偏向→輕量級→重量級)、鎖消除/粗化。
  • volatile 關鍵字:可見性、有序性(禁止指令重排)、不保證原子性、DCL 單例模式。
  • AQS 框架:state 狀態、FIFO 隊列、獨佔/共享模式、Condition 實現原理。
  • 線程池七大參數:core/maximumPoolSize、keepAliveTime、workQueue、threadFactory、handler 拒絕策略、execute() 流程圖。

四、JVM 核心

  • 內存模型:堆(新生代 Eden/S0/S1、老年代)、元空間、虛擬機棧、本地方法棧、程序計數器。
  • GC 算法:標記-清除、標記-整理、複製、分代收集;G1/ZGC/Shenandoah 低延遲收集器原理。
  • 類加載機制:雙親委派、破壞雙親委派場景(Tomcat、SPI)、熱部署原理。
  • 性能調優:-Xms/-Xmx/-Xmn/-Xss、GC 日誌分析、Arthas/JVisualVM/MAT 實戰工具。

五、主流框架原理

  • Spring IOC/AOP:Bean 生命周期、三級緩存解決循環依賴、動態代理(JDK/CGLIB)、切面織入時機。
  • SpringMVC 流程:DispatcherServlet→HandlerMapping→HandlerAdapter→ViewResolver,攔截器鏈。
  • SpringBoot 自動配置:@EnableAutoConfiguration→spring.factories→@Conditional 條件裝配。
  • MyBatis:一級/二級緩存、動態 SQL 標籤、插件攔截器鏈、分頁插件原理。

後續將推出「第二期:中間件與分布式」、「第三期:場景設計題」敬請期待!

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved