java面試總結

1、java的集合框架html

HashMap、HashTable、CurrentHashMap的底層數據結構與區別?java

CurrentHashMap與HashTable是如何保證線程安全的?mysql

ArrayList與LinkedList的底層數據結構與區別?面試

set、list、map有什麼區別?他們的父類分別是什麼?redis

http://blog.csdn.net/u011202334/article/details/51496381 HashMap的底層數據結構算法

http://www.javashuo.com/article/p-wdfeiofg-ds.html LinkedHashMap的底層數據結構
spring

http://www.javashuo.com/article/p-rbdmlbeh-dg.html ArrayList的底層數據結構sql

http://www.javashuo.com/article/p-ewvfwwpz-cv.html LinkedList的底層數據結構數據庫

http://blog.csdn.net/u012999869/article/details/51714290 ConcurrentHashMa底層數據結構segmentfault

http://blog.csdn.net/baidu_28068985/article/details/78529246 相關數據結構的底層實現及比較

http://blog.csdn.net/LYW_lyw/article/details/78809809

2、字符串

String、StringBuffer、StringBuilder的區別?

String str = new String("abd);  String str = "abd";  執行這兩句話後分別建立了幾個對象?

3、線程池與多線程

什麼是線程池?線程池的做用?

如何實現多線程同步?

建立線程的方式有哪幾種?

ThreadLocal的做用?

synchronized關鍵字與Lock、ReentrantLock的區別?

常見的有哪些鎖?

什麼是分佈式鎖?如何實現分佈式鎖?

java中AQS與CAS是什麼?

什麼是原子性操做?

volatile關鍵字的做用與原理?

http://blog.csdn.net/gol_phing/article/details/49032055    線程池原理講解

https://blog.csdn.net/a837199685/article/details/50619311  線程池種類以及排隊策略

http://www.javashuo.com/article/p-pbrabxwl-gw.html  多線程同步的方法

http://blog.51cto.com/lavasoft/51926 ThreadLocal講解

http://www.javashuo.com/article/p-qoputiwf-co.html  完全理解ThreadLocal

http://www.importnew.com/23511.html  深刻分析synchronized的原理

https://blog.csdn.net/baidu_37107022/article/details/77016993  偏向鎖、輕量級鎖、重量級鎖(講的頗有條理,易懂)

http://www.infoq.com/cn/articles/ftf-java-volatile 深刻分析Volatile的實現原理

http://www.javashuo.com/article/p-ahklihfi-gk.html   JavaVolatile關鍵字詳解

http://www.javashuo.com/article/p-xcevmtwv-gz.html  Java併發之AQS詳解

https://blog.csdn.net/fighterandknight/article/details/54906293  JavaCAS詳解

http://www.javashuo.com/article/p-cuawvexi-ck.html  java原子操做的實現原理

https://blog.csdn.net/hejingyuan6/article/details/47053409  線程之間如何實現數據共享(舉例說明,例子不錯)

http://www.cnblogs.com/xrq730/p/5060921.html  關於線程的面試題(有時間能夠看看)

http://www.javashuo.com/article/p-tvfrikfj-bv.html 一個簡單的死鎖的例子

4、類加載器原理

http://www.javashuo.com/article/p-xtnnggnp-bn.html  java中的類加載器的原理

5、樂觀鎖和悲觀鎖的區別與應用場景

https://blog.csdn.net/claram/article/details/53959367  什麼是樂觀鎖和悲觀鎖?他們有什麼區別?如何實現樂觀鎖?  

6、設計模式

什麼是單例模式?請寫一個單例模式的例子。

什麼是觀察者模式?

https://www.cnblogs.com/zhaoyan001/p/6365064.html  常見的八種單例模式?

http://www.javashuo.com/article/p-wlhjudrr-n.html  防反射注入的單例模式

7、java的概念性問題

什麼是java的面向對象?(通常從java的面向對象的特色來回答)

抽象類和接口的區別?

http://www.javashuo.com/article/p-rilolxqn-a.html   什麼是泛型?爲何用泛型?

什麼狀況下使用基本類型的包裝類?

8、垃圾回收器

jvm內存溢出?內存泄漏?jvm的內存結構?

年輕代、老年代、終生代中,垃圾回收器回收時都採用什麼回收算法?

http://www.sohu.com/a/134512799_695350          各類java垃圾回收器的比較

http://www.javashuo.com/article/p-dypyjmgu-a.html   java GC系列,講的比較好

http://www.javashuo.com/article/p-sjfwzjrb-n.html     java垃圾回收算法講解

9、java中的nio與io

https://segmentfault.com/a/1190000014932357?utm_source=tag-newest  什麼是io?什麼是nio?兩者有什麼區別?爲何nio非阻塞的?

https://blog.csdn.net/zcl_love_wx/article/details/52126876  java的序列化與反序列化? 

http://www.javashuo.com/article/p-qsjjhggv-bq.html 

http://www.javashuo.com/article/p-wgmaiqpx-a.html 

10、網絡協議

HTTP協議、TCP協議、IP協議分別工做在哪一層?

TCP協議的三次握手機制是什麼?爲何採用這種機制?

HTTP協議與HTTPS協議的區別?

什麼是restful風格? https://www.jianshu.com/p/43dae0b83755

rpc與rest的區別? https://baijiahao.baidu.com/s?id=1617168792520937104&wfr=spider&for=pc

http和rpc調用的優缺點? https://www.jianshu.com/p/b61695e6b473

11、瀏覽器的經常使用狀態碼

200、400、500、40三、404等狀態碼什麼意思?

https://blog.csdn.net/wyhluckydog/article/details/84667323  http狀態碼詳解

12、數據庫

什麼是ACID?

Oracle和mysql的區別?(若都用過會問)http://www.javashuo.com/article/p-ncwrnfsm-k.html 

oracle或mysql的底層數據結構?

Oracle或mysql的分頁查詢語句?

什麼是索引?爲何會建立索引?什麼是彙集索引?什麼是組合索引?什麼狀況下會致使索引失效?建立索引須要注意的問題?

數據庫的三範式?

sql優化?什麼是存儲過程?

建立表的時候須要注意的問題?

left join、right join、inner join的區別?

Oracle數據庫如何實現自增?

http://www.javashuo.com/article/p-hpflcnvm-cq.html  mysql數據庫sql語句執行順序

http://www.javashuo.com/article/p-hhjpbvwx-bd.html   mysql索引優化

http://www.javashuo.com/article/p-pfdaxrlr-ev.html  mysql索引優化實戰(不錯)

https://blog.csdn.net/qsfwy/article/details/83701246  執行了一條save語句可是沒有提交事務,那麼數據有沒有存到庫裏面?

https://blog.csdn.net/qq_23217629/article/details/52516277  sql優化避免索引失效

http://www.javashuo.com/article/p-sofyqtml-dw.html (建立索引的優勢和缺點)

http://www.javashuo.com/article/p-dsoayjhn-c.html 爲什麼建立索引能提升查詢效率

https://blog.csdn.net/zhangbo_0323/article/details/50156357  (對於B樹、B+樹的理解)

https://www.cnblogs.com/aspnethot/articles/1504082.html (彙集索引)

https://blog.csdn.net/litong09282039/article/details/46404139 (主鍵、外鍵、索引的關係

 http://www.javashuo.com/article/p-tlyahmrr-bc.html sql語句的執行順序?(不錯)

https://www.cnblogs.com/augus007/articles/7999586.html  sql語句的執行原理(很好)

http://www.javashuo.com/article/p-gvjaoram-ec.html (輔助理解

http://www.javashuo.com/article/p-gjvyckrx-dm.html  (四中mysql的引擎,可能會問到)

 十3、spring框架

spring中事務的傳播屬性有哪幾種?區別是什麼?隔離級別有哪幾種?

spring 事務默認的回滾異常時什麼?

spring和springMVC的關係是什麼?

spring中的bean是如何被加載到容器中的?

spring 控制器默認是單例的嗎?如果單例的話可能會有什麼後果?是線程安全的嗎?

spring的IOC和AOP是什麼?

https://blog.csdn.net/qq_34173549/article/details/79929071  spring ioc原理講解

過濾器和攔截器的區別?

Spring AOP註解何時失效?如何解決?

springboot有了解過嗎?

spring使用的兩種代理jdk的動態代理和cglib動態代理的原理與區別分別是什麼?

https://blog.csdn.net/trigl/article/details/50968079  (spring 事務管理,講得好)

https://blog.csdn.net/liaohaojian/article/details/70139151  (spring 事務管理,講的更具體)

 http://www.javashuo.com/article/p-djhsmwvu-hn.html  (spring和springMVC的關係)

http://www.javashuo.com/article/p-daamkhus-g.html  (spring各個註解的做用與使用)

http://www.jb51.net/article/137255.htm  Spring AOP註解失效及解決辦法

http://www.javashuo.com/article/p-rdagsfro-db.html  spring AOP原理透徹講解(例子)

https://blog.csdn.net/u013126379/article/details/52121096  淺談spring的兩種代理的區別

http://www.javashuo.com/article/p-czbvatqk-bv.html  spring面試題整理

http://www.javashuo.com/article/p-vzcqzezu-db.html spring boot與spring cloud面試題整理

 十3、servlet技術

什麼是servlet?與CGI的區別是什麼?

servlet的生命週期?何時建立?何時銷燬?DispatcherServlet何時建立?servlet的建立方式?

http://www.javashuo.com/article/p-eqdathxk-r.html  servlet何時被實例化

https://blog.csdn.net/u012129558/article/details/52329543  servlet單例理解

十4、AJAX

請求是同步請求仍是異步請求?

十5、hibernate與mybatis

MyBatis瞭解嗎?與hibernate有什麼區別?

http://www.javashuo.com/article/p-evqkecmw-go.html  mybatis常見面試題

http://www.javashuo.com/article/p-ofinzcen-bb.html  mybatis面試題附答案

http://www.javashuo.com/article/p-rmhwrsav-s.html (mybatis開發配置總結,總結好)

十6、算法題

整數的反轉?

經常使用排序算法有哪些?冒泡排序算法思路?快速排序算法思路?

兩個有序的整型數組如何合併成一個有序的數組?

如何判斷一個鏈表有沒有環?

如何實現字符串的反轉?不許用String類自帶的方法

如何判斷一個數是不是2的n次方?

如何層序遍歷二叉樹並輸出每一個節點?

最短路徑算法?(只被問到一次)

十7、redis(若用過redis緩存會問)

redis都有哪幾種數據結構?有哪些優勢?適用於什麼場合?

與memache有什麼區別?

http://www.javashuo.com/article/p-tcosbdfn-bc.html  redis主從複製原理總結(詳細)

https://blog.csdn.net/chuanxincui/article/details/89306882  RDB與AOF的優缺點

https://www.cnblogs.com/miaozhihang/p/9517714.html   快照與aof的區別

十8、maven工具(若用到會問)

使用maven時的經常使用命令?

如何解決jar包衝突?

十9、開放題

進程之間如何通信?(被問過一次)

什麼是敏捷開發?

jdk8有什麼新特性?(重要)

什麼是restful風格?(重要)

tomcat服務器的啓動參數都配置過哪些?

區域鏈瞭解不?(被問過一次)

幾種加密算法瞭解嗎?好比base64加密,md5加密?Unicode url加密?

都用過什麼工具?好比畫原型用的工具,設計流程用的工具。

https://blog.csdn.net/qinmengdeCluntan/article/details/77532883?locationNum=5&fps=1  集羣環境下如何實現session共享?(說下思路會加分)

https://www.bilibili.com/video/av14372754/  jdk8新特性視頻講解

https://blog.csdn.net/xlgen157387/article/details/79036337  分佈式鎖簡單入門以及三種實現方式(說下思路會加分)

二10、項目題

通常會問你項目中遇到過哪些問題,是怎麼解決的?

大家系統的總體架構是什麼?

相關文章
相關標籤/搜索