第 1 章 Java 基本概念
- Java 語言的優點?
- 什么是 Java 虛擬機?為什么 Java 被稱作是“平臺無關的編程語言”?
- Java 和 C++ 有何區別?
- JDK 和 JRE 的區別是什么?
- Java 支持的資料型別有哪些?什么是自動拆裝箱?
- 什么是值傳遞和參考傳遞?
- 一個 ".java" 源檔案中是否可以包括多個類(不是內部類)?有什么限制?
- 靜態變數和實體變數的區別?
- 不通過建構式也能創建物件嗎?
- 靜態變數和實體變數的區別?
- 是否可以從一個靜態(static)方法內部發出對非靜態(non-static)方法的呼叫?
- 如何實作物件克隆?
- 一個“.java”源檔案中是否可以包含多個類(不是內部類)?有什么限制?
- Anonymous Inner Class(匿名內部類)是否可以繼承其它類?是否可以實作介面?
- 內部類可以參考它的包含類(外部類)的成員嗎?有沒有什么限制?
- 列出自己常用的 jdk 包
- JDK, JRE 和 JVM 的區別?
第 2 章 面向物件編程
- Java 中的方法覆寫 (Overriding) 和方法多載 (Overloading) 是什么意思?
- Overload 和 Override 的區別? Overloaded 的方法是否可以改變回傳值的型別?
- Java 中,什么是建構式?什么是建構式多載?什么是復制建構式?
- 構造器 Constructor 是否可被 Override?
- Java 支持多繼承么?
- 介面和抽象類的區別是什么?
- 下列說法正確的有()
- Java 介面的修飾符可以為?
- 下面是 People 和 Child 類的定義和構造方法,每個構造方法都輸出編號,在執行 new Chil d("mike") 的時候都有哪些構造方法被順序呼叫?請選擇輸出結果
- 構造器(constructor)是否可被重寫(override)?
- 兩個物件值相同(x.equals(y) == true),但卻可有不同的 hash code,這句話對不對?
- 介面是否可繼承(extends)介面? 抽象類是否可實作(implements)介面? 抽象類是否可繼 承具體類(concrete class)?
- 指出下面程式的運行結果:
- Class.forName(String className)這個方法的作用
- 什么是 AOP 和 OOP,IOC 和 DI 有什么不同?
- 判斷下列陳述句是否正確,如果有錯誤,請指出錯誤所在?
第 3 章 關鍵字
- ”static” 關鍵字是什么意思?Java 中是否可以覆寫(override) 一個 private 或者是 static 的 方法?
- 是否可以在 static 環境中訪問非 static 變數?
- 訪問修飾符 public, private, protected, 以及不寫(默認)時的區別?
- volatile關鍵字是否能保證執行緒安全?
- Java 有沒有 goto?
- Java 中的 final關鍵字有哪些用法?
- 什么時候用 assert?
- final, finally, finalize 的區別?
第 4 章 基本型別與運算
- 說說 & 和 && 的區別,
- 用最有效率的方法算出 2 乘以 8 等於幾?
- 存在使 i + 1 < i的數嗎?
- 0.6332 的資料型別是()
- System.out.println("5" + 2);的輸出結果應該是()
- 下面的方法,當輸入為 2 的時候回傳值是多少?
- float f=3.4;是否正確?
- int 和 Integer 有什么區別?
- char 型變數中能不能存貯一個中文漢字?為什么?
- Math.round(11.5) 等于多少? Math.round(-11.5)等于多少?
第 5 章 字串與陣列
- 下面程式的運行結果是()
- 下面代碼的運行結果為?
- String 是最基本的資料型別嗎?
- 陣列有沒有 length() 方法? String 有沒有 length() 方法?
- 是否可以繼承 String 類?
- String 和StringBuilder、StringBuffer 的區別?
- String s=new String(“xyz”);創建了幾個字串物件?
- 將字符 “12345” 轉換成 long 型
- 為了顯示 myStr = 23 這樣的結果,寫出在控制臺輸入的命令
- String s = "Hello";s = s + " world!”; 這兩行代碼執行后,原始的 String 物件中的內容到底變 了沒有?
- 如何把一段逗號分割的字串轉換成一個陣列?
- 下面這條陳述句一共創建了多少個物件: String s=“a”+”b”+”c”+”d”;
- String 和 StringBuffer 的區別?
- String, StringBuffer StringBuilder的區別,
第 6 章 輸入輸出流
- 下面哪個流類屬于面向字符的輸入流?
- 閱讀 Shape 和 Circle 兩個類的定義,在序列化一個 Circle 的物件 circle 到檔案時,下面哪個 欄位會被保存到檔案中?
- 什么是 Java 序列化,如何實作 Java 序列化?
第 7 章 集合類
- 下列說法正確的是()
- ArrayList list = new ArrayList(20);中的 list 擴充幾次?
- Java集合類框架的基本介面有哪些?
- 為什么集合類沒有實作 Cloneable 和 Serializable 介面?
- 什么是迭代器(Iterator)?
- Iterator和ListIterator的區別是什么?
- 快速失敗(fail-fast)和安全失敗(fail-safe)的區別是什么?
- Java 中的 HashMap 的作業原理是什么?
- hashCode() 和 equals() 方法的重要性體現在什么地方?
- HashMap 和 Hashtable 有什么區別?
- 陣列(Array)和串列(ArrayList)有什么區別?什么時候應該使用 Array 而不是 ArrayList?
- ArrayList 和 LinkedList 有什么區別?
- Comparable 和Comparator 介面是干什么的?列出它們的區別,
- Java集合類框架的最佳實踐有哪些?
- Enumeration 介面和 Iterator 介面的區別有哪些?
- HashSet 和 TreeSet 有什么區別?
- List、Set、Map 是否繼承自 Collection 介面?
- 說出 ArrayList、Vector、LinkedList 的存盤性能和特性?
- List、Map、Set 三個介面存盤元素時各有什么特點?
- 判斷下列陳述句是否正確,如果有錯誤,請指出錯誤所在?
- 你是怎么理解 Java 泛型的?
第 8 章 Java 平臺與記憶體管理
- GC執行緒是否為守護執行緒?()
- 解釋記憶體中的堆疊(stack)、堆(heap)和靜態存盤區的用法,
- Java 中會存在記憶體泄漏嗎,請簡單描述,
- GC 是什么?為什么要有 GC?
- 第 3 行中生成的 object在第幾行執行后成為 garbage collection 的物件?
- 描述一下 JVM 加載 class 檔案的原理機制?
第 9 章 例外處理
- 下面關于java.lang.Exception類的說法正確的是()
- 擴展:錯誤和例外的區別(Error vs Exception)
- getCustomerInfo() 方法如下,try 中可以捕獲三種型別的例外,如果在該方法運行中產生了一 個 IOException,將會輸出什么結果?
- try{} 里有一個 return 陳述句,那么緊跟在這個 try 后的 finally{} 里的 code 會不會被執行,什么 時候被執行,在 return 前還是后?
- Java 語言如何進行例外處理,關鍵字:throws、throw、try、catch、finally 分別如何使
用? - 運行時例外與受檢例外有何異同?
- 請寫出 5 種常見到的runtime exception,
- error 和 exception 有什么區別?
第 10 章 XML
- XML 包括哪些解釋技術,區別是什么?
- XML 檔案定義有幾種形式?它們之間有何本質區別?決議XML 檔案有哪幾種方式?
- 你在專案中哪些地方用到了 XML?
- 談談對 XML 的理解?說明 Web 應用中 Web.xml 檔案的作用?
- XML 是一種元語言, 可以用它來描述其他語言,
- 在 XML 中用于注釋的符號是,(選擇1項)
- DTD 與 XML Schema 都是XML檔案,(選擇1項)
第 11 章 Java 多執行緒
- 下面哪些是Thread類的方法?
- 下面程式的運行結果?
- 行程和執行緒的區別是什么?
- 創建執行緒有幾種不同的方式?你喜歡哪一種?為什么?
- 概括的解釋下執行緒的幾種可用狀態,
- 同步方法和同步代碼塊的區別是什么?
- 在監視器(Monitor)內部,是如何做執行緒同步的?程式應該做哪種級別的同步?
- 什么是死鎖(deadlock)?
- 如何確保 N 個執行緒可以訪問 N 個資源同時又不導致死鎖?
- sleep() 和 wait() 有什么區別?
- sleep() 和 yield() 有什么區別?
- 當一個執行緒進入一個物件的 synchronized 方法 A 之后,其它執行緒是否可進入此物件的 synch ronized 方法?
- 請說出與執行緒同步相關的方法,
- synchronized 關鍵字的用法?
- 舉例說明同步和異步,
- 啟動一個執行緒是用 run() 還是 start() 方法?
- 什么是執行緒池(thread pool)?
- 執行緒的基本狀態以及狀態之間的關系?
- 死鎖的必要條件?怎么克服?
第 12 章 JDBC 與資料庫
- 下列屬于關系型資料庫的是()
- 在進行資料庫編程時,連接池有什么作用?
- 什么是 DAO 模式?
- 什么是ORM?
- JDBC 中如何進行事務處理?
- 事務的 ACID 是指什么?
- 使用 JDBC 操作資料庫時,如何提升讀取資料的性能?如何提升更新資料的性能?
- 存盤程序和函式的區別
- 你認為在表上建立索引可以提高資料庫系統的效率嗎,為什么?
- 什么是資料庫的參照完整性?
- 如何優化資料庫,如何提高資料庫的性能?
第 13 章 Servlet 與 JSP
- JSP 有哪些內置物件和動作?它們的作用分別是什么?
- 描述 JSP 和 Servlet 的區別、共同點、各自應用的范圍
- 從以下哪一個選項中可以獲得 Servlet的 初始化引數?
- 哪一個物件可以用于獲得瀏覽器發送的請求?
- 運行 jsp 需要安裝_______Web 服務器,
- 在服務器的網路編程中,解決會話跟蹤的方法有
- 與 HttpSessionListener 介面有關的方法是
- 關于 JSP 生命周期的敘述,下列哪些為真?
- 以下宣告正確的是?
- 下列哪個為 JSP 的隱含物件?
- 下面的那一個不屬于 MVC 模式中的物件?
- 在 Servlet 處理請求的方式為,(選擇1項)
- javax.Servlet 的包中,屬于類的是,(選擇1項)
- Http 預設的請求方法是,(選擇1項)
- 實作現下列哪一種介面的物件,并不需要在 web.xml 檔案內進行額外的設定,Servlet 容器就 能夠回應該物件加入 HTTP 會話所發生的事件?(選擇1項)
- 下列哪個為 JSP 的小腳本的標簽?(選擇1項)
- 以下不屬于 JSP 的標準指令的是,(選擇1項)
- 對于每一個網站訪問用戶都要訪問的變數,應該將它設為________變數,(選擇1項)
- 查看下列 JSP 內容
- 假設 A.jsp 內設定一個 <jsp:useBean> 元素:
- 在 MVC 設計模式中,JavaBean的 作用是,(選擇1項)
第 14 章 J2EE 與 EJB
- J2EE 是什么?它包括哪些技術?
- 描述 J2EE 框架的多層結構,并簡要說明各層的作用,
- EJB 包含哪 3 種 bean
- Tomcat 服務器的默認埠是多少?怎樣修改 tomcat 的埠?
- EJB的優點有哪些?(選擇 2 項)
- 無狀態會話 Bean、有狀態會話 Bean、CMP 與 BMP 中,哪一種 Bean 不需要自己書寫連接 資料庫的代碼?
- 假設 web 應用的檔案根目錄為 MyApp,那么可以從哪里找到 database.jar 檔案
8.要創建一個 EJB,必須要至少撰寫哪些 Java 類和介面? - EJB 類別庫存在于 Java 的哪個版本中?(選擇1項),
- 在 J2EE 中屬于 Web 層的組件有(選擇1項)
- EJB 的角色和三個物件
- EJB 的激活機制
- EJB 的幾種型別
第 15 章 SSH 架構
- 描述 Struts 體系結構?對應各個部分的開發作業主要包括哪些?
- 簡要描述如何結合 struts、hibernate、spring 開發 Web 應用?
- 說明反轉控制(IOC)和面向方向編程(AOP)在 spring 中的應用
- 簡述基于 Struts 框架 Web 應用的作業流程
- 在專案中用過 Spring的 哪些方面?及用過哪些 Ajax 框架?
- MVC 模式中 M,V,C 每個代表意義,并簡述在 Struts 中 MVC 的表現方式,
- Hibernate 中的 Java物件有幾種狀態,其相互關系如何(區別和相互轉換),
- 對 Hibernate 的延遲加載如何理解,在實際應用中,延遲加載與 session 關閉的矛盾是如何處 理的?
- Struts1 中 actionform 和 action 屬于 MVC 哪一層,為什么?
- struts2 中,Action 通過什么方式獲得用戶從頁面輸入的資料,又是通過什么方式把其自身的 資料傳給視圖的?
- 說明什么是工廠模式?
- struts 中如何實作國際化,涉及哪些檔案?
- Struts 框架可以支持以下哪種程式開發語言?(選擇1項)
- struts 是什么?
- spring 是什么?
- hibernate 是什么?
- 用自己的話簡要闡述 struts2 的執行流程
第 16 章 UML
- UML是什么?UML中有哪些圖?
- 類圖用來表示系統中類和類與類之間的關系,它是對系統動態結構的描述,(選擇1項)
第 17 章 常見設計模式
- 寫一個單例類,
- 說說你所熟悉或聽說過的設計模式以及你對設計模式的看法,
- 你在開發中都用到了那些設計模式?用在什么場合?
- 編程題: 寫一個Singleton出來
寫在最后
Java面試寶典已經整理完畢,共231頁,收集一百九十多道面試題,包含了:
- Java 基本概念
- 面向物件編程
- 關鍵字
- 基本型別與運算
- 字串與陣列
- 輸入輸出流
- 集合類
- Java 平臺與記憶體管理
- 例外處理
- XML
- Java 多執行緒
- JDBC 與資料庫
- Servlet 與 JSP
- J2EE 與 EJB
- SSH 架構
- UML
- 常見設計模式
等知識點,現將其免費分享給大家!
需要的朋友關注下方公眾號 即可領取面試資料和視頻學習資料

以下是文章中的部分截圖





轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/33134.html
標籤:其他
