早起的鳥兒有蟲吃。
2019年java面試經典100問,進入BAT不是夢。
2019年立刻就要結束了,領完年終獎是否是該跳槽了呢,提早準備起來吧,小夥伴。
本文由公衆號「情繫IT」整理,設計到的內容由java基礎、數據庫、SSM框架、redis、消息隊列、spring boot、spring cloud、git及一些前端知識。
因爲篇幅過長,故在此只發布問題,若是想要獲取完整的問題及答案,請關注 微 信 公衆號「情繫IT」,回覆面試便可得到pdf版經典面試100問。公衆號二維碼以下:
java
一、面向對象的特徵有哪些方面? 【基礎】git
二、int 和Integer 有什麼區別? 【基礎】面試
三、Math.round(11.5) 等於多少? Math.round(-11.5)等於多少? 【基礎】redis
四、編程題: 用最有效率的方法算出2 乘以8 等於幾? 【基礎】spring
五、數組有沒有 length()方法?String 有沒有 length()方法?【基礎】docker
六、構造器(constructor)是否可被重寫(override)?【基礎】數據庫
七、是否能夠繼承String 類? 【基礎】編程
八、當一個對象被看成參數傳遞到一個方法後,此方法可改變這個對象的屬性,並可返回變化後的結果,那麼這裏究竟是值傳遞仍是引用傳遞? 【基礎】跨域
九、String 和StringBuffer 的區別?【基礎】
十、String, StringBuffer StringBuilder 的區別。【基礎】
十一、重載(Overload)和重寫(Override)的區別。重載的方法可否根據返回類型進行區分?【基礎】
十二、描述一下 JVM 加載 class 文件的原理機制?【中等】
1三、interface能夠有方法的實現嗎?【中等】
1四、是否能夠從一個static 方法內部發出對非static 方法的調用?【基礎】
1五、GC 是什麼? 爲何要有GC? 【基礎】
1六、垃圾回收器的基本原理是什麼?垃圾回收器能夠立刻回收內存嗎?有什麼辦法主動通知虛擬機進行垃圾回收?【基礎】
1七、一個「.java」源文件中是否能夠包含多個類(不是內部類)?有什麼限制?【基礎】
1八、Java 中的 final 關鍵字有哪些用法?【基礎】
1九、編碼轉換:怎樣將GB2312 編碼的字符串轉換爲ISO-8859-1 編碼的字符串?【基礎】
20、error 和exception 有什麼區別? 【基礎】
2一、try{}裏有一個return語句,那麼緊跟在這個try後的finally{}裏的代碼會不會被執行,何時被執行,在return前仍是後?【基礎】
2二、List,Set,Map 是否繼承自Collection 接口?【基礎】
2三、說出ArrayList,Vector, LinkedList 的存儲性能和特性?【基礎】
2四、HashMap 和Hashtable 的區別? 【基礎】
2五、Arraylist 與Vector 區別?【基礎】
2六、List、Map、Set 三個接口,存取元素時,各有什麼特色?【基礎】
2七、sleep() 和wait() 有什麼區別? 【基礎】
2八、當一個線程進入一個對象的一個synchronized 方法後,其它線程是否可進入此對象的其它方法? 【基礎】
2九、多線程有幾種實現方法,都是什麼?同步有幾種實現方法,都是什麼? 【基礎】
30、當一個線程進入一個對象的 synchronized 方法 A 以後,其它線程是否可進入此對象的 synchronized 方法 B?【中等】
3一、簡述synchronized 和java.util.concurrent.locks.Lock 的異同?【中等】
3二、編寫多線程程序有幾種實現方式?【中等】
3三、Java 中如何實現序列化,有什麼意義?【中等】
3四、闡述 JDBC 操做數據庫的步驟。【基礎】
3五、使用 JDBC 操做數據庫時,如何提高讀取數據的性能?如何提高更新數據的性能?【中等】
3六、在進行數據庫編程時,鏈接池有什麼做用?【基礎】
3七、事務的ACID是指什麼?【基礎】
3八、談談髒讀、幻讀和不可重複讀?【中等】
3九、JDBC中如何進行事務處理?【中等】
40、得到一個類的類對象有哪些方式?【基礎】
4一、JSP 有哪些內置對象?做用分別是什麼?【基礎】
4二、get 和 post 請求的區別?【基礎】
4三、講解 JSP 中的四種做用域。【基礎】
4四、MyBatis 中使用#和$書寫佔位符有什麼區別?【中等】
4五、解釋一下 MyBatis 中命名空間(namespace)的做用。【中等】
4六、什麼是 IoC 和 DI?DI 是如何實現的?【中等】
4七、解釋一下什麼叫 AOP(面向切面編程)?【基礎】
4八、你是如何理解"橫切關注"這個概念的?【中等】
4九、你如何理解 AOP 中的鏈接點(Joinpoint)、切點(Pointcut)、加強(Advice)、引介(Introduction)、織入(Weaving)、切面(Aspect)這些概念?【基礎】
50、Spring 支持的事務管理類型有哪些?你在項目中使用哪一種方式?【中等】
5一、Spring MVC的工做原理是怎樣的?【基礎】
5二、什麼是 XSS 攻擊?【困難】
5三、SQL 注入攻擊?【困難】
5四、什麼是CSRF攻擊?【困難】
5五、使用redis有哪些好處?【基礎】
5六、Redis有哪些數據結構?【基礎】
5七、若是有大量的key須要設置同一時間過時,通常須要注意什麼?【中等】
5八、爲何Redis須要把全部數據放到內存中?【中等】
5九、Redis提供了哪幾種持久化方式?【中等】
60、如何選擇合適的持久化方式?【中等】
6一、redis支持的java客戶端你用過哪一個?【基礎】
6二、Redis集羣的主從複製模型是怎樣的?【困難】
6三、Redis集羣之間是如何複製的?【中等】
6四、怎麼測試Redis的連通性?【基礎】
6五、爲何要用消息隊列?【中等】
6六、使用消息隊列有什麼缺點【中等】
6七、爲何選用RocketMQ;RocketMQ和ActiveMQ的區別【困難】
6八、RocketMQ是怎麼保證系統高可用的?【困難】
6九、消息中間件集羣崩潰,如何保證百萬生產數據不丟失?【中等】
70、Spring Boot 的核心配置文件有哪幾個?它們的區別是什麼?【中等】
7一、Spring Boot 的配置文件有哪幾種格式?它們有什麼區別?【中等】
7二、Spring Boot 的核心註解是哪一個?它主要由哪幾個註解組成的?【基礎】
7三、開啓 Spring Boot 特性有哪幾種方式?【基礎】
7四、Spring Boot 須要獨立的容器運行嗎?【基礎】
7五、如何在 Spring Boot 啓動的時候運行一些特定的代碼?【中等】
7六、Spring Boot 有哪幾種讀取配置的方式?【中等】
7七、Spring Boot 如何定義多套不一樣環境配置?【中等】
7八、SpringBoot中的定時任務如何實現?【中等】
7九、咱們如何鏈接一個像 MYSQL 或者 orcale 同樣的外部數據庫?【中等】
80、什麼是微服務【中等】
8一、微服務之間是如何獨立通信的spring Cloud和 Dubbo有哪些區別?【困難】
8二、springcloud如何實現服務的註冊和發現【中等】
8三、Ribbon和Feign的區別【中等】
8四、springcloud斷路器的做用【中等】
8五、springcloud如何實現服務的註冊和發現【中等】
8六、springcloud中的組件有那些?【中等】
8七、cookie和session的區別【基礎】
8八、一次完整的http請求過程【中等】
8九、講一下長鏈接【困難】
90、TCP如何保證可靠傳輸?【困難】
9一、URI和URL的區別【中等】
9二、http和https的區別?【中等】
9三、docker經常使用命令【中等】
9四、什麼是Docker鏡像?【中等】
9五、什麼是Docker容器?【中等】
9六、什麼是Docker Hub?【中等】
9七、什麼是 Git 復刻(fork)?復刻(fork)、分支(branch)和克隆(clone)之間有什麼區別?【中等】
9八、「git pull」和「git fetch」之間有什麼區別?【中等】
9九、使用Ajax的優缺點分別是什麼?【中等】
100、跨域問題,誰限制的跨域,怎麼解決【困難】
若是文章對您有幫助,請記得點贊關注喲~ 歡迎你們關注個人公衆號:情繫IT,每日推送技術文章供你們學習參考。