阿里菜鸟一轮
1.自我介绍
2.问项目(实在没啥好问的,大部分都是增删改查)
3.了解冒泡排序吗,时间复杂度呢(讲了一下)
4.了解链表吗,自己动手写过吗(说了一下链表怎么写,以CLH队列为例子说了下双向链表的队列怎么实现)
5.了解AQS吗,看过源码吗(说了一下AQS的源码和ReentrantLock的源码,说了一点就被打断了,估计知道我看过没往下问)
6.了解Hashmap吗(说了下),你知道JDK1.8Hashmap有什么改动吗(引入红黑树,仔细说了一下)
7.深克隆浅克隆说一下(这个当时真没答上,没印象)
8.了解Java内存模型吗?(基于JSR133说了一下JMM,内存重排序,happens before什么的
刚要说四种内存屏障又被略过去了)
9.哦我想问的是JVM的内存划分(大哥,内存模型是JMM啊说明白啊,于是说了一下永久代那一堆,顺便提了提java也可以自己划分内存)
10.知道垃圾回收机制吗(3种,答了答)gc时各个代达到什么条件会发生迁徙(达到xx比例吧 忘了这个真忘了)
11.一般哪部分内存对应哪种回收机制(老年对标记整理,新生对复制,好像是,这个题答得不是很确定)
12.JDK1.8有什么新特性吗?(lambada表达式啊
JUC下Fuction<T,R>,然后我多嘴了,提了一下Google Guava类的集合工具类,于是有了13题)
13.你觉得Google Guava工具类的Fuction和JUC下的Fuction有什么区别(Google
Guava类的Function实际上模拟了一个匿名内部类 JUC那个不知道)
14.你知道JKD1.8的JVM指令集上有什么更新吗对比1.7(懵了,这什么玩意?)
15.线程的状态(答了答 把sleep漏掉了)
16.线程状态切换(重点说了说interrut不会抛出异常,被wait会抛出异常并重新设置中断状态为false,所以如果因为其他操作导致了终端异常需要中心把中断状态置为true)
17.finalize会不会立即出发GC,finalize对象复活(这个问题我完全答错了,当时我刚下班,在大街上 太吵
听成System.gc()了,瞎比答了一堆,还跟人说深入理解JVM那本书我敲过那个代码,简直是。。)
18.SpringAop了解过吗(说了说应用场景和底层实现)
19.你刚才提到代理了,知道动态代理吗(jdk cglib)
20.jdk cglib的区别是什么(jdk接口 cglib extend类所以不能final)
前面都还中规中矩 崩盘点来啦
21.你有没有了解过开源框架比如Springboot?(了解过)
22.看过Springboot源码吗(这个真没有)
23.知道java序列化吗(当时懵了 要崩 NIO那部分我还没看,故意把话题往fastjson上拖,结果失败了)
24.了解过Netty看过Netty的源码吗(听说过,没)
25.了解Dubbo吗 自己动手打过框架吗(了解啊,没动手做过)
26.Dubbo源码看过吗(没)
27.Zookeeper呢(大哥都没看过,jdk都没看完)
28.你下一步的学习计划(看zookeeper源码,把一本阿里系的分布式架构那本书看完,)
29.聊了聊分布式系统,分布式锁的实现。
30.对了 补充一下还有Jedis源码跟他说了一下,底层依赖socket,JedisSharedPool依赖Commons
Pool 又把Commons Pool中的Evictor机制给他讲了讲
1.redis的消息队列
2.redis的数据类型
3.用redis做过什么
4.数据用户表是怎么设计的
5.单点登录系统是怎么实现的
6.如何实现共享session
7.登陆系统和前台系统如何拿到同一个cookie
8.http的组成结构
9.http和https的区别
10.https是如何确保数据安全的
11.数据库有哪些索引
12.(这里被坑了)主键索引是聚集索引还是非聚集索引
13.数据库水平拆分和库表散列有什么优点
14.springmvc和struts的比较一些问题
15.为什么要用spring有什么优点
16.接触过那些数据结构
17.java中那些是上述所用的?
18.启动线程的方式
19.线程池有哪几种.干什么用
20.jvm的加载过程
21.java内存模型
22.快速排序的时间复杂度,以及过程已经怎么计算时间复杂度
23.其他还有问到一些但是记不起来了,攒人品,希望一面能过
菜鸟一面
时间:2017年8月2日晚8点
1.在实习单位做了什么项目
2.询问了MySQL事务四大特性,用事务做了什么(操作数据库表更新)
3.mysql事务隔离级别
4.默认隔离级别(应该是可重复读,但是当时比较紧张,就乱答了。。。。)
5.为什么使用spring(可以用ioc aop等特性)
6.spring ioc是什么,为什么使用ioc,为什么使用配置文件,而不使用直接去new
7.分表用的插件
8.如何去分区
9.常见数据库优化(回答了索引,覆盖索引,什么时候应该分表,字段适当冗余)
10.jvm类加载
11.双亲委派
12.为什么使用双亲委派
1.自我介绍
2.问项目(实在没啥好问的,大部分都是增删改查)
3.了解冒泡排序吗,时间复杂度呢(讲了一下)
4.了解链表吗,自己动手写过吗(说了一下链表怎么写,以CLH队列为例子说了下双向链表的队列怎么实现)
5.了解AQS吗,看过源码吗(说了一下AQS的源码和ReentrantLock的源码,说了一点就被打断了,估计知道我看过没往下问)
6.了解Hashmap吗(说了下),你知道JDK1.8Hashmap有什么改动吗(引入红黑树,仔细说了一下)
7.深克隆浅克隆说一下(这个当时真没答上,没印象)
8.了解Java内存模型吗?(基于JSR133说了一下JMM,内存重排序,happens before什么的
刚要说四种内存屏障又被略过去了)
9.哦我想问的是JVM的内存划分(大哥,内存模型是JMM啊说明白啊,于是说了一下永久代那一堆,顺便提了提java也可以自己划分内存)
10.知道垃圾回收机制吗(3种,答了答)gc时各个代达到什么条件会发生迁徙(达到xx比例吧 忘了这个真忘了)
11.一般哪部分内存对应哪种回收机制(老年对标记整理,新生对复制,好像是,这个题答得不是很确定)
12.JDK1.8有什么新特性吗?(lambada表达式啊
JUC下Fuction<T,R>,然后我多嘴了,提了一下Google Guava类的集合工具类,于是有了13题)
13.你觉得Google Guava工具类的Fuction和JUC下的Fuction有什么区别(Google
Guava类的Function实际上模拟了一个匿名内部类 JUC那个不知道)
14.你知道JKD1.8的JVM指令集上有什么更新吗对比1.7(懵了,这什么玩意?)
15.线程的状态(答了答 把sleep漏掉了)
16.线程状态切换(重点说了说interrut不会抛出异常,被wait会抛出异常并重新设置中断状态为false,所以如果因为其他操作导致了终端异常需要中心把中断状态置为true)
17.finalize会不会立即出发GC,finalize对象复活(这个问题我完全答错了,当时我刚下班,在大街上 太吵
听成System.gc()了,瞎比答了一堆,还跟人说深入理解JVM那本书我敲过那个代码,简直是。。)
18.SpringAop了解过吗(说了说应用场景和底层实现)
19.你刚才提到代理了,知道动态代理吗(jdk cglib)
20.jdk cglib的区别是什么(jdk接口 cglib extend类所以不能final)
前面都还中规中矩 崩盘点来啦
21.你有没有了解过开源框架比如Springboot?(了解过)
22.看过Springboot源码吗(这个真没有)
23.知道java序列化吗(当时懵了 要崩 NIO那部分我还没看,故意把话题往fastjson上拖,结果失败了)
24.了解过Netty看过Netty的源码吗(听说过,没)
25.了解Dubbo吗 自己动手打过框架吗(了解啊,没动手做过)
26.Dubbo源码看过吗(没)
27.Zookeeper呢(大哥都没看过,jdk都没看完)
28.你下一步的学习计划(看zookeeper源码,把一本阿里系的分布式架构那本书看完,)
29.聊了聊分布式系统,分布式锁的实现。
30.对了 补充一下还有Jedis源码跟他说了一下,底层依赖socket,JedisSharedPool依赖Commons
Pool 又把Commons Pool中的Evictor机制给他讲了讲
1.redis的消息队列
2.redis的数据类型
3.用redis做过什么
4.数据用户表是怎么设计的
5.单点登录系统是怎么实现的
6.如何实现共享session
7.登陆系统和前台系统如何拿到同一个cookie
8.http的组成结构
9.http和https的区别
10.https是如何确保数据安全的
11.数据库有哪些索引
12.(这里被坑了)主键索引是聚集索引还是非聚集索引
13.数据库水平拆分和库表散列有什么优点
14.springmvc和struts的比较一些问题
15.为什么要用spring有什么优点
16.接触过那些数据结构
17.java中那些是上述所用的?
18.启动线程的方式
19.线程池有哪几种.干什么用
20.jvm的加载过程
21.java内存模型
22.快速排序的时间复杂度,以及过程已经怎么计算时间复杂度
23.其他还有问到一些但是记不起来了,攒人品,希望一面能过
菜鸟一面
时间:2017年8月2日晚8点
1.在实习单位做了什么项目
2.询问了MySQL事务四大特性,用事务做了什么(操作数据库表更新)
3.mysql事务隔离级别
4.默认隔离级别(应该是可重复读,但是当时比较紧张,就乱答了。。。。)
5.为什么使用spring(可以用ioc aop等特性)
6.spring ioc是什么,为什么使用ioc,为什么使用配置文件,而不使用直接去new
7.分表用的插件
8.如何去分区
9.常见数据库优化(回答了索引,覆盖索引,什么时候应该分表,字段适当冗余)
10.jvm类加载
11.双亲委派
12.为什么使用双亲委派