找工做的時候遇到過的java面試題目與本身遇到的整理,不貼答案~可自行尋找答案,問題不按難度排序。java
一、抽象類和接口的區別mysql
二、hashcode()和equals()的關係面試
三、HashMap(Set)底層機制(用到的數據結構以及代碼原理)redis
四、Object的經常使用的一些方法spring
五、講一下反射以及用到的場景sql
六、Spring 主要作了哪些工做數據庫
七、IOC和AOP以及應用場景設計模式
八、JVM的內存管理和GC是怎麼作的安全
九、OOM的解決方案(關聯問題8)服務器
十、JVM ClassLoader原理
十一、怎麼新開線程,線程安全怎麼控制,ThreadLocal有什麼用,HashMap怎麼作到線程安全,怎麼解決死鎖的問題;
十二、說幾個經常使用的設計模式和應用場景;
1三、java代理機制;
1四、多服務器的session共享解決方案;
1五、zookeeper的工做原理;
1六、soa架構模式有什麼好處;
1七、寫一個單例,工廠模式,動態代理模式
1八、spring ioc,aop,事務 實現 原理
1九、synchronized和reentrantlock區別,性能差別
20、鎖分類(輕量級鎖,重量級鎖,偏向鎖,自適應鎖,自旋鎖)
2一、mysql 如何分庫分表,如何保證一致性
2二、spring 事務隔離級別。spring事務源碼實現
2三、Redis和Memcache的區別,什麼狀況下用哪一個
2四、mongdb和mysql區別
2五、volatile原理
2六、線程棧在內存裏如何分配的及工做方式
2七、數據庫隔離級別有哪些,mysql默認級別是哪一個
2八、分佈式鎖的解決方案
2九、分佈式事務解決方案知道幾個
30、若是我從數據庫查出來500萬條數據,就是500萬個對象,讓你選擇一個集合去存儲,而後我要隨機拿出100萬個對象,你會選什麼集合?
3一、java併發,說說你的見解
3二、volatile是否安全,描述一下它修飾的變量在jvm中的執行流程
3三、講一講restful以及它的缺點
3四、spring bean感知容器聽過嗎?解釋一下
3五、spring aop用到什麼註解
3六、使用for update在spring中是怎麼提交事務的
3七、redis的兩個持久化了解嗎?
3八、redis 爲何能夠保證setnx是安全的
3九、大家的redis都用來幹什麼?爲何要用它來作分佈式鎖?若是不用redis、zk這些還有辦法作嗎?爲何?
40、mysql 執行計劃 怎麼分析
4一、mybatis #{} ${}的區別
4二、工做中都用到什麼設計模式。怎麼用的
4三、spring ioc、aop的原理
4四、說一說你熟悉的java集合工具的原理
4五、mq是怎麼保證消息必定成功的
4六、springmvc 一個請求到返回,都經歷了什麼
4七、說說concurrent包下你都知道那些,它們的做用是什麼
4八、maven私有庫知道嗎?released能夠發佈幾回?
4九、mysql selectA,B 跟select A inner join B有什麼區別嗎?用那個好
50、spring事務原理?
5一、spring bean的生命週期
5二、ThreadLocal的原理
5三、寫出一下代碼的輸出結果
public class Parent { static{ System.out.println("SuperClass init"); } public static int vau=123; } public class Child extends Parent { static { System.out.println("Child"); } } public class Net { public static void main(String[] args) { System.out.println(Child.vau); } }
public class test { public static void main(String[] args) { System.out.println((93&-8)); } }
int i=1; int b=(++i)+(i++)+(++i); System.out.println(b);
大概就這些了吧~筆記記得比較亂,記得還有一些的。找到了再貼上