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

Java 基礎知識體系全景總結:從語法入門到進階特性

     編輯:Java 綜合教學

Java 基礎知識體系全景總結:從語法入門到進階特性

本文系統梳理 Java SE 核心知識點,涵蓋開發流程、語法基礎、面向對象、集合框架、異常處理、IO 流、多線程、網路編程、反射、泛型、註解等模組,適合建立完整知識地圖與面試複習。

一、開發流程與環境建置

  • 四步開發法: 明確需求 → 分析思路 → 確定步驟 → 代碼實現
  • JDK / JRE / JVM: JDK = 開發工具 + JRE;JRE = 類庫 + JVM
  • 環境變數: JAVA_HOME、Path、Classpath(優先當前目錄,再按路徑搜尋)
  • 編譯/執行: javac 生成 .class 位元碼;java 啟動 JVM 載入執行

二、語法基礎

  • 關鍵字/標識符/常量/變數 命名規範與作用域
  • 八大基本型別: byte, short, int, long, float, double, char, boolean;自動/強制轉型規則
  • 運算子: 算術、賦值、比較、邏輯(&&/|| 短路)、位運算(<<, >>, >>>)、異或交換變數技巧
  • 流程控制: if/switch(固定值判斷用 switch)、for/while/do-while、break/continue、標籤跳出多層迴圈
  • 方法定義/重載/遞歸;main 方法簽名解析
  • 陣列: 靜態/動態初始化、記憶體圖解、二分查找(前提:有序)

三、面向對象核心

特徵核心機制關鍵字/語法
封裝隱藏屬性,提供公共存取方法private, setXxx/getXxx, this
繼承單繼承、多層繼承、super 呼叫父建構子、方法覆寫規則extends, super, final, abstract
多態父類引用指向子類對象、向上/向下轉型、instanceof 判斷動態綁定(方法)、靜態綁定(變數/靜態方法)
抽象抽象類/介面、模板方法模式abstract, interface, implements
  • 單例模式: 餓漢式(類載入即建立)vs 懶漢式(雙重檢查鎖延遲載入)
  • 內部類: 成員/靜態/局部/匿名內部類;匿名內部類常用於事件監聽、執行緒建立
  • Object 核心方法: equals/hashCode/toString 覆寫規約

四、異常處理機制

  • 體系: Throwable → Error(不可處理) / Exception(可處理) → RuntimeException(運行時)
  • 處理: try-catch-finally、throws 拋出、throw 主動拋出、自訂異常、異常鏈轉換
  • 原則: 能處理就 catch,不能處理就 throws;finally 釋放資源(System.exit(0) 除外)

五、集合框架

集合體系圖

  • Collection: List(有序、可重複) / Set(無序、唯一)
  • List 實現: ArrayList(陣列、查詢快) / LinkedList(鏈表、增刪快) / Vector(同步、已淘汰)
  • Set 實現: HashSet(哈希表、hashCode/equals) / LinkedHashSet(有序) / TreeSet(紅黑樹、排序、Comparable/Comparator)
  • Map: HashMap(非同步、允許 null) / Hashtable(同步、不允許 null) / TreeMap(排序)
  • 遍歷: Iterator、ListIterator、增強 for、forEach(Java 8+)
  • 工具類: Collections(排序/查找/同步包裝) / Arrays(陣列轉 List/排序/複製)

六、IO 流體系

  • 分類: 位元組流(InputStream/OutputStream) vs 字元流(Reader/Writer);輸入 vs 輸出
  • 裝飾模式: BufferedReader/Writer、InputStreamReader/OutputStreamWriter(轉換流、指定編碼)
  • 核心類: File(檔案/目錄操作)、RandomAccessFile(隨機存取)、PrintWriter(格式化輸出)
  • 物件序列化: Serializable、transient、serialVersionUID、ObjectOutputStream/InputStream
  • 其他: DataInput/OutputStream(基本型別)、ByteArrayInput/OutputStream(記憶體)、管道流、序列流

七、多線程與併發

  • 建立: 繼承 Thread / 實現 Runnable / 實現 Callable+FutureTask(可回傳值/拋異常)
  • 生命週期: 新建 → 就緒 → 執行 → 阻塞/等待/計時等待 → 終止
  • 同步: synchronized(程式碼塊/方法)、Lock(ReentrantLock)、Condition(await/signal)
  • 線程通訊: wait/notify/notifyAll(需在同步塊中)、生產者消費者模型
  • 進階: 線程池(ExecutorService)、volatile、ThreadLocal、Atomic 類、CountDownLatch/CyclicBarrier/Semaphore

八、網路編程

  • UDP: DatagramSocket + DatagramPacket,無連線、不可靠、速度快
  • TCP: ServerSocket(伺服端) + Socket(客戶端),三次交握、可靠串流、getInputStream/getOutputStream
  • InetAddress: IP/主機名解析

九、反射與動態代理

  • 取得 Class: Class.forName()、.class、obj.getClass()
  • 操作: 建構子(Constructor)、方法(Method)、欄位(Field);setAccessible(true) 破壞封裝
  • 動態代理: Proxy.newProxyInstance + InvocationHandler,AOP 基石

十、泛型與註解

  • 泛型: 編譯期類型檢查、類型擦除、上界(<? extends E>)/下界(<? super E>)通配符、PECS 原則
  • 註解: 內建(@Override/@Deprecated/@SuppressWarnings) / 元註解(@Retention/@Target/@Documented/@Inherited) / 自訂註解 + 反射解析

十一、Java 8+ 新特性速覽

  • Lambda 表達式、函數式介面、方法引用
  • Stream API:filter/map/reduce/collect 等流式處理
  • Optional 避免空指針、LocalDateTime 新時間 API
  • default/static 介面方法、重複註解、類型註解
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved