我憑借著這份面試寶典,拿到了阿里,騰訊,京東等十三家大廠的offer

第 1 章 Java 基本概念

  1. Java 語言的優點?
  2. 什么是 Java 虛擬機?為什么 Java 被稱作是“平臺無關的編程語言”?
  3. Java 和 C++ 有何區別?
  4. JDK 和 JRE 的區別是什么?
  5. Java 支持的數據類型有哪些?什么是自動拆裝箱?
  6. 什么是值傳遞和引用傳遞?
  7. 一個 ".java" 源文件中是否可以包括多個類(不是內部類)?有什么限制?
  8. 靜態變量和實例變量的區別?
  9. 不通過構造函數也能創建對象嗎?
  10. 靜態變量和實例變量的區別?
  11. 是否可以從一個靜態(static)方法內部發出對非靜態(non-static)方法的調用?
  12. 如何實現對象克隆?
  13. 一個“.java”源文件中是否可以包含多個類(不是內部類)?有什么限制?
  14. Anonymous Inner Class(匿名內部類)是否可以繼承其它類?是否可以實現接口?
  15. 內部類可以引用它的包含類(外部類)的成員嗎?有沒有什么限制?
  16. 列出自己常用的 jdk 包
  17. JDK, JRE 和 JVM 的區別?

第 2 章 面向對象編程

  1. Java 中的方法覆蓋 (Overriding) 和方法重載 (Overloading) 是什么意思?
  2. Overload 和 Override 的區別? Overloaded 的方法是否可以改變返回值的類型?
  3. Java 中,什么是構造函數?什么是構造函數重載?什么是復制構造函數?
  4. 構造器 Constructor 是否可被 Override?
  5. Java 支持多繼承么?
  6. 接口和抽象類的區別是什么?
  7. 下列說法正確的有()
  8. Java 接口的修飾符可以為?
  9. 下面是 People 和 Child 類的定義和構造方法,每個構造方法都輸出編號。在執行 new Chil d("mike") 的時候都有哪些構造方法被順序調用?請選擇輸出結果
  10. 構造器(constructor)是否可被重寫(override)?
  11. 兩個對象值相同(x.equals(y) == true),但卻可有不同的 hash code,這句話對不對?
  12. 接口是否可繼承(extends)接口? 抽象類是否可實現(implements)接口? 抽象類是否可繼 承具體類(concrete class)?
  13. 指出下面程序的運行結果:
  14. Class.forName(String className)這個方法的作用
  15. 什么是 AOP 和 OOP,IOC 和 DI 有什么不同?
  16. 判斷下列語句是否正確,如果有錯誤,請指出錯誤所在?

第 3 章 關鍵字

  1. ”static” 關鍵字是什么意思?Java 中是否可以覆蓋(override) 一個 private 或者是 static 的 方法?
  2. 是否可以在 static 環境中訪問非 static 變量?
  3. 訪問修飾符 public, private, protected, 以及不寫(默認)時的區別?
  4. volatile關鍵字是否能保證線程安全?
  5. Java 有沒有 goto?
  6. Java 中的 final關鍵字有哪些用法?
  7. 什么時候用 assert?
  8. final, finally, finalize 的區別?

第 4 章 基本類型與運算

  1. 說說 & 和 && 的區別。
  2. 用最有效率的方法算出 2 乘以 8 等於幾?
  3. 存在使 i + 1 < i的數嗎?
  4. 0.6332 的數據類型是()
  5. System.out.println("5" + 2);的輸出結果應該是()
  6. 下面的方法,當輸入為 2 的時候返回值是多少?
  7. float f=3.4;是否正確?
  8. int 和 Integer 有什么區別?
  9. char 型變量中能不能存貯一個中文漢字?為什么?
  10. Math.round(11.5) 等于多少? Math.round(-11.5)等于多少?

第 5 章 字符串與數組

  1. 下面程序的運行結果是()
  2. 下面代碼的運行結果為?
  3. String 是最基本的數據類型嗎?
  4. 數組有沒有 length() 方法? String 有沒有 length() 方法?
  5. 是否可以繼承 String 類?
  6. String 和StringBuilder、StringBuffer 的區別?
  7. String s=new String(“xyz”);創建了幾個字符串對象?
  8. 將字符 “12345” 轉換成 long 型
  9. 為了顯示 myStr = 23 這樣的結果,寫出在控制臺輸入的命令
  10. String s = "Hello";s = s + " world!”; 這兩行代碼執行后,原始的 String 對象中的內容到底變 了沒有?
  11. 如何把一段逗號分割的字符串轉換成一個數組?
  12. 下面這條語句一共創建了多少個對象: String s=“a”+”b”+”c”+”d”;
  13. String 和 StringBuffer 的區別?
  14. String, StringBuffer StringBuilder的區別。

第 6 章 輸入輸出流

  1. 下面哪個流類屬于面向字符的輸入流?
  2. 閱讀 Shape 和 Circle 兩個類的定義。在序列化一個 Circle 的對象 circle 到文件時,下面哪個 字段會被保存到文件中?
  3. 什么是 Java 序列化,如何實現 Java 序列化?

第 7 章 集合類

  1. 下列說法正確的是()
  2. ArrayList list = new ArrayList(20);中的 list 擴充幾次?
  3. Java集合類框架的基本接口有哪些?
  4. 為什么集合類沒有實現 Cloneable 和 Serializable 接口?
  5. 什么是迭代器(Iterator)?
  6. Iterator和ListIterator的區別是什么?
  7. 快速失敗(fail-fast)和安全失敗(fail-safe)的區別是什么?
  8. Java 中的 HashMap 的工作原理是什么?
  9. hashCode() 和 equals() 方法的重要性體現在什么地方?
  10. HashMap 和 Hashtable 有什么區別?
  11. 數組(Array)和列表(ArrayList)有什么區別?什么時候應該使用 Array 而不是 ArrayList?
  12. ArrayList 和 LinkedList 有什么區別?
  13. Comparable 和Comparator 接口是干什么的?列出它們的區別。
  14. Java集合類框架的最佳實踐有哪些?
  15. Enumeration 接口和 Iterator 接口的區別有哪些?
  16. HashSet 和 TreeSet 有什么區別?
  17. List、Set、Map 是否繼承自 Collection 接口?
  18. 說出 ArrayList、Vector、LinkedList 的存儲性能和特性?
  19. List、Map、Set 三個接口存儲元素時各有什么特點?
  20. 判斷下列語句是否正確,如果有錯誤,請指出錯誤所在?
  21. 你是怎么理解 Java 泛型的?

第 8 章 Java 平臺與內存管理

  1. GC線程是否為守護線程?()
  2. 解釋內存中的棧(stack)、堆(heap)和靜態存儲區的用法。
  3. Java 中會存在內存泄漏嗎,請簡單描述。
  4. GC 是什么?為什么要有 GC?
  5. 第 3 行中生成的 object在第幾行執行后成為 garbage collection 的對象?
  6. 描述一下 JVM 加載 class 文件的原理機制?

第 9 章 異常處理

  1. 下面關于java.lang.Exception類的說法正確的是()
  2. 擴展:錯誤和異常的區別(Error vs Exception)
  3. getCustomerInfo() 方法如下,try 中可以捕獲三種類型的異常,如果在該方法運行中產生了一 個 IOException,將會輸出什么結果?
  4. try{} 里有一個 return 語句,那么緊跟在這個 try 后的 finally{} 里的 code 會不會被執行,什么 時候被執行,在 return 前還是后?
  5. Java 語言如何進行異常處理,關鍵字:throws、throw、try、catch、finally 分別如何使
    用?
  6. 運行時異常與受檢異常有何異同?
  7. 請寫出 5 種常見到的runtime exception。
  8. error 和 exception 有什么區別?

第 10 章 XML

  1. XML 包括哪些解釋技術,區別是什么?
  2. XML 文檔定義有幾種形式?它們之間有何本質區別?解析XML 文檔有哪幾種方式?
  3. 你在項目中哪些地方用到了 XML?
  4. 談談對 XML 的理解?說明 Web 應用中 Web.xml 文件的作用?
  5. XML 是一種元語言, 可以用它來描述其他語言。
  6. 在 XML 中用于注釋的符號是。(選擇1項)
  7. DTD 與 XML Schema 都是XML文檔。(選擇1項)

第 11 章 Java 多線程

  1. 下面哪些是Thread類的方法?
  2. 下面程序的運行結果?
  3. 進程和線程的區別是什么?
  4. 創建線程有幾種不同的方式?你喜歡哪一種?為什么?
  5. 概括的解釋下線程的幾種可用狀態。
  6. 同步方法和同步代碼塊的區別是什么?
  7. 在監視器(Monitor)內部,是如何做線程同步的?程序應該做哪種級別的同步?
  8. 什么是死鎖(deadlock)?
  9. 如何確保 N 個線程可以訪問 N 個資源同時又不導致死鎖?
  10. sleep() 和 wait() 有什么區別?
  11. sleep() 和 yield() 有什么區別?
  12. 當一個線程進入一個對象的 synchronized 方法 A 之后,其它線程是否可進入此對象的 synch ronized 方法?
  13. 請說出與線程同步相關的方法。
  14. synchronized 關鍵字的用法?
  15. 舉例說明同步和異步。
  16. 啟動一個線程是用 run() 還是 start() 方法?
  17. 什么是線程池(thread pool)?
  18. 線程的基本狀態以及狀態之間的關系?
  19. 死鎖的必要條件?怎么克服?

第 12 章 JDBC 與數據庫

  1. 下列屬于關系型數據庫的是()
  2. 在進行數據庫編程時,連接池有什么作用?
  3. 什么是 DAO 模式?
  4. 什么是ORM?
  5. JDBC 中如何進行事務處理?
  6. 事務的 ACID 是指什么?
  7. 使用 JDBC 操作數據庫時,如何提升讀取數據的性能?如何提升更新數據的性能?
  8. 存儲過程和函數的區別
  9. 你認為在表上建立索引可以提高數據庫系統的效率嗎,為什么?
  10. 什么是數據庫的參照完整性?
  11. 如何優化數據庫,如何提高數據庫的性能?

第 13 章 Servlet 與 JSP

  1. JSP 有哪些內置對象和動作?它們的作用分別是什么?
  2. 描述 JSP 和 Servlet 的區別、共同點、各自應用的范圍
  3. 從以下哪一個選項中可以獲得 Servlet的 初始化參數?
  4. 哪一個對象可以用于獲得瀏覽器發送的請求?
  5. 運行 jsp 需要安裝_______Web 服務器。
  6. 在服務器的網絡編程中,解決會話跟蹤的方法有
  7. 與 HttpSessionListener 接口有關的方法是
  8. 關于 JSP 生命周期的敘述,下列哪些為真?
  9. 以下聲明正確的是?
  10. 下列哪個為 JSP 的隱含對象?
  11. 下面的那一個不屬于 MVC 模式中的對象?
  12. 在 Servlet 處理請求的方式為。(選擇1項)
  13. javax.Servlet 的包中,屬于類的是。(選擇1項)
  14. Http 缺省的請求方法是。(選擇1項)
  15. 實現現下列哪一種接口的對象,并不需要在 web.xml 文件內進行額外的設定,Servlet 容器就 能夠回應該對象加入 HTTP 會話所發生的事件?(選擇1項)
  16. 下列哪個為 JSP 的小腳本的標簽?(選擇1項)
  17. 以下不屬于 JSP 的標準指令的是。(選擇1項)
  18. 對于每一個網站訪問用戶都要訪問的變量,應該將它設為________變量。(選擇1項)
  19. 查看下列 JSP 內容
  20. 假設 A.jsp 內設定一個 <jsp:useBean> 元素:
  21. 在 MVC 設計模式中,JavaBean的 作用是。(選擇1項)

第 14 章 J2EE 與 EJB

  1. J2EE 是什么?它包括哪些技術?
  2. 描述 J2EE 框架的多層結構,并簡要說明各層的作用。
  3. EJB 包含哪 3 種 bean
  4. Tomcat 服務器的默認端口是多少?怎樣修改 tomcat 的端口?
  5. EJB的優點有哪些?(選擇 2 項)
  6. 無狀態會話 Bean、有狀態會話 Bean、CMP 與 BMP 中,哪一種 Bean 不需要自己書寫連接 數據庫的代碼?
  7. 假設 web 應用的文檔根目錄為 MyApp,那么可以從哪里找到 database.jar 文件
  8. 要創建一個 EJB,必須要至少編寫哪些 Java 類和接口?
  9. EJB 類庫存在于 Java 的哪個版本中?(選擇1項)。
  10. 在 J2EE 中屬于 Web 層的組件有(選擇1項)
  11. EJB 的角色和三個對象
  12. EJB 的激活機制
  13. EJB 的幾種類型

第 15 章 SSH 架構

  1. 描述 Struts 體系結構?對應各個部分的開發工作主要包括哪些?
  2. 簡要描述如何結合 struts、hibernate、spring 開發 Web 應用?
  3. 說明反轉控制(IOC)和面向方向編程(AOP)在 spring 中的應用
  4. 簡述基于 Struts 框架 Web 應用的工作流程
  5. 在項目中用過 Spring的 哪些方面?及用過哪些 Ajax 框架?
  6. MVC 模式中 M,V,C 每個代表意義,并簡述在 Struts 中 MVC 的表現方式。
  7. Hibernate 中的 Java對象有幾種狀態,其相互關系如何(區別和相互轉換)。
  8. 對 Hibernate 的延遲加載如何理解,在實際應用中,延遲加載與 session 關閉的矛盾是如何處 理的?
  9. Struts1 中 actionform 和 action 屬于 MVC 哪一層,為什么?
  10. struts2 中,Action 通過什么方式獲得用戶從頁面輸入的數據,又是通過什么方式把其自身的 數據傳給視圖的?
  11. 說明什么是工廠模式?
  12. struts 中如何實現國際化,涉及哪些文件?
  13. Struts 框架可以支持以下哪種程序開發語言?(選擇1項)
  14. struts 是什么?
  15. spring 是什么?
  16. hibernate 是什么?
  17. 用自己的話簡要闡述 struts2 的執行流程

第 16 章 UML

  1. UML是什么?UML中有哪些圖?
  2. 類圖用來表示系統中類和類與類之間的關系,它是對系統動態結構的描述。(選擇1項)

第 17 章 常見設計模式

  1. 寫一個單例類。
  2. 說說你所熟悉或聽說過的設計模式以及你對設計模式的看法。
  3. 你在開發中都用到了那些設計模式?用在什么場合?
  4. 編程題: 寫一個Singleton出來

寫在最后

Java面試寶典已經整理完畢,共231頁,收集一百九十多道面試題。包含了

  • Java 基本概念
  • 面向對象編程
  • 關鍵字
  • 基本類型與運算
  • 字符串與數組
  • 輸入輸出流
  • 集合類
  • Java 平臺與內存管理
  • 異常處理
  • XML
  • Java 多線程
  • JDBC 與數據庫
  • Servlet 與 JSP
  • J2EE 與 EJB
  • SSH 架構
  • UML
  • 常見設計模式

等知識點,現將其免費分享給大家!

需要的朋友點擊下方傳送門, 即可免費領取面試資料和視頻學習資料

傳送門

以下是文章中的部分截圖

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,461評論 6 532
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,538評論 3 417
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,423評論 0 375
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,991評論 1 312
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,761評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,207評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,268評論 3 441
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,419評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,959評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,782評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,983評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,528評論 5 359
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,222評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,653評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,901評論 1 286
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,678評論 3 392
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,978評論 2 374

推薦閱讀更多精彩內容

  • JAVA面試題 1、作用域public,private,protected,以及不寫時的區別答:區別如下:作用域 ...
    JA尐白閱讀 1,175評論 1 0
  • 一. Java基礎部分.................................................
    wy_sure閱讀 3,826評論 0 11
  • 1、面向對象的特征有哪些方面 1.抽象:抽象就是忽略一個主題中與當前目標無關的那些方面,以便更充分地注意與當前目標...
    michaelgong閱讀 834評論 0 1
  • 小編費力收集:給你想要的面試集合 1.C++或Java中的異常處理機制的簡單原理和應用。 當JAVA程序違反了JA...
    八爺君閱讀 4,635評論 1 114
  • JAVA相關基礎知識 1、面向對象的特征有哪些方面 1.抽象: 抽象就是忽略一個主題中與當前目標無關的那些方面,以...
    yangkg閱讀 673評論 0 1