Java常用面试题
用来记录日常遇到的可能的Java面试题,持续添加......
1、MySQL数据库引擎介绍、区别、创建和性能测试的深入分析
MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的。要添加一个新的引擎,就必须重新编译MYSQL。在缺省情况下,MYSQL支持三个引擎:ISAM、MYISAM和HEAP。另外两种类型INNODB和BERKLEY(BDB),也常常可以使用。如果技术高超,还可以使用MySQL+API自己做一个引擎。下面介绍几种数据库引擎:http://www.jb51.net/article/38004.htm
2、KMP算法和sunday算法
KMP算法: http://blog.csdn.net/joylnwang/article/details/6778316/
sunday算法:https://www.cnblogs.com/Syhawk/p/4077295.html
3、Java的IN和NIO
Java NIO 系列教程:http://ifeve.com/overview/
4、Syncthronzied和Lock的区别
http://blog.csdn.net/u012403290/article/details/64910926?locationNum=11&fps=1
https://www.cnblogs.com/benshan/p/3551987.html
5、wait和sleep的区别
http://blog.csdn.net/shineflowers/article/details/40047479
6、HashMap和HashTable比较
7、数据库脏读和幻读,数据库四种隔离级别
8、Collection包结构,与Collections的区别
http://blog.csdn.net/itzhanghao/article/details/46865671
9、ThreadLocal的设计理念与作用
http://blog.csdn.net/u011860731/article/details/48733073
10、Java1.7与1.8新特性
11、hashMap源码,hashCode作用
12、ArrayList、LinkedList、Vector的区别
13、String、StringBuffer与StringBuilder的区别
14、Map、Set、List、Queue、Stack的特点与用法
15、TreeMap、HashMap、LindedHashMap的区别
16、Excption与Error包结构。OOM你遇到过哪些情况,SOF你遇到过哪些情况
17、线程同步的方法:sychronized、lock、reentrantLock等
18、锁的等级:方法锁、对象锁、类锁
19、ThreadPool用法与优势
20、Concurrent包里的其他东西:ArrayBlockingQueue、CountDownLatch等等
21、设计模式:单例、工厂、适配器、责任链、观察者等等
22、内存模型以及分区,需要详细到每个区放什么
23、堆里面的分区:Eden,survival from to,老年代,各自的特点
24、对象创建方法,对象的内存分配,对象的访问定位
25、GC的两种判定方法:引用计数与引用链
26、GC的三种收集方法:标记清除、标记整理、复制算法的原理与特点,分别用在什么地方,如果让你优化收集方法,有什么思路?
27、GC收集器有哪些?CMS收集器与G1收集器的特点
28、Minor GC与Full GC分别在什么时候发生
29、几种常用的内存调试工具:jmap、jstack、jconsole
30、类加载的五个过程:加载、验证、准备、解析、初始化
31、双亲委派模型:Bootstrap ClassLoader、Extension ClassLoader、ApplicationClassLoader
32、分派:静态分派与动态分派
33、设计模式
34、最小子串覆盖问题(MWS)
35、字符串匹配:KMP和Sunday算法