面经
首先是Java虚拟机垃圾回收
Synchronized与EntrantLock的区别。
数据库事务隔离
LRU最近事物
快排
大根堆
大部分都能答上,但是回答的不够深入
题目
Java虚拟机垃圾回收
Synchronized与ReentrantLock的区别
数据库事务隔离
LRU最近事物
快排
大根堆
总结
Java虚拟机垃圾回收
Synchronized与ReentrantLock的区别
数据库事务隔离
LRU最近事物
快排
大根堆
技术一面:
一面基本上面的还算基础 没有过多的刁难 不过问题量特别大
1、自我介绍
巴拉巴拉,大致说了下实习和自己平时自己喜欢做的事情
2、我们先聊聊java基础知识吧,说出Object类的常用方法?
toString(),clone(),线程的三个方法:wait()notify()notifyAll(),hashcode(),finallize(),equals()
大致讲了上面这些个方法 并说了下各个方法的作用。
3、刚刚说到object的常用方法,这些方法你应该都很熟悉吧,那你说说你对equal和hashcode这两个方法的认识?
主要谈了下两个的作用 以及 当重写equal方法时候一定要记得重写hashcode方法,然后面试官就问了为什么,然后就继续巴拉巴拉。。。
然后面试官紧接着问 两个对象如果equals那么这两个对象的hashcode一定相等么 回答是! 那如果两个对象的hashcode相等那么这两个对象是否一定equals?
回答 不一定!理由其实 就是 关于 讲重写这两个方法的情况。
4、多线程用过吧?写过一些demo,那你说说多线程之间的通信,回答用wait sleep notify notifyAll配合使用 然后就问 wait和sleep一样吗?
回答不一样,然后巴拉巴拉谈了下,关于对象锁的释放,是否需要唤醒。。。
5、嗯,刚刚谈到了锁,一下面试官就扯出了锁,看你简历上ssh mybatis都熟悉,那你知道悲观锁和乐观锁吧?答知道,然后讲了下两个的区别以及应用场景
6、你平时数据库一般用的什么 mysql 那你说说在工作中一般用的什么数据库引擎 答 mysql默认的是InnoDB存储引擎 敢情面试官想给我使绊子来着.
接着就让说InnoDB和MyISAM之间使用场景问题了,然后就就着这两种存储引擎的区别 以及 优缺点巴拉巴拉说了一通
7、平时是怎么处理事务的,讲下对事务的了解
8、看你简历上讲了分库分表 谈谈两个的使用 以及 在工作中 怎么去设计
这里主要是结合自己实习的项目来说的
9、mybatis缓存 以及谈谈你们项目为什么用spring mvc+mybatis 而不用Hibernate?
主要是说说一级缓存 二级缓存 然后 讲讲mybatis相对于Hibernate来说的优点好处之类
10、项目里用到了redis 为什么用它?
巴拉巴拉讲了一通业务需要 缓存数据 实现会话缓存的机制之类
11、.java如何实现多态
讲了下重载和重写
12、谈谈java的垃圾回收机制
从java提供垃圾回收机制说起,谈到了回收时机 何时回收 以及几个常用的垃圾回收算法,然后面试官问了解G1吗,听过但没具体了解了&#