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

Java 面試核心題庫:OOP 四大特性、集合框架、異常體系、Servlet/EJB 經典題深度解析

     編輯:Java 相關知識

匯總 Java 面試高頻核心題,涵蓋面向對象、基礎語法、集合、異常、Web、EJB 等模塊,附標準答案與深度解析。

1. 面向對象四大特性

  • 抽象:忽略非目標細節,關注核心。含過程抽象與數據抽象
  • 繼承:層次模型復用,子類獲取父類特性並可擴展
  • 封裝:隱藏內部實現,通過定義接口訪問。三大修飾符控制權限
  • 多態:同一消息不同對象不同響應。參數化多態與包含多態

2. String 是基本類型嗎?

否。八大基本類型:byte, int, char, long, float, double, boolean, short。String 為 final 類,不可繼承修改。頻繁拼接建議用 StringBuffer/StringBuilder。

3. int vs Integer

int 基本類型;Integer 包裝類。八大基本類型均有對應包裝類。差異:默認值(null vs 0)、存儲方式(棧 vs 堆)、性能、泛型支持。

4. String vs StringBuffer

String 不可變;StringBuffer 可變、線程安全。動態構建字符串用 StringBuffer(單線程可用 StringBuilder 更快)。

5. 運行時異常 vs 受檢異常

運行時異常(RuntimeException 子類):常見錯誤,編譯器不強制捕獲/聲明。受檢異常:須 throws 聲明或 try-catch 處理。

6. Servlet 生命週期與 vs CGI

生命週期:init() → service() → doGet/doPost() → destroy()。
差異:Servlet 多線程服務多請求,實例常駐;CGI 每請求創建進程,服務完銷毀,效率低。

7. ArrayList vs Vector vs LinkedList

  • ArrayList/Vector:數組底層,隨機訪問快,插刪慢(需移動元素)
  • Vector:同步方法,性能較 ArrayList 差
  • LinkedList:雙向鏈表,插刪快 O(1),訪問慢 O(n)

8. EJB 技術基礎與 Bean 類型區別

基於 JNDI、RMI、JTA 等技術。
SessionBean:業務邏輯執行器(非持久)。
EntityBean:持久數據代表(持久)。
Stateful vs Stateless SessionBean:前者維護客戶狀態(一用戶一實例,佔內存大);後者無狀態(實例共享,佔內存小,擴展性強)。

9. Collection vs Collections

Collection:集合頂層接口(子接口 Set/List)。
Collections:工具類,提供排序、搜索、線程安全包裝等靜態方法。

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