CVTE、三七互娱Java面试经验分享

CVTE 一面

1.项目项目项目:数据权限,Oauth2.0 协议等

2.springspringMVC 等框架起的是什么作用

3.HashMap 原理,你用一般用什么作为Key,用对象可以吗,怎么解决

4.ConcurrentHashMap 分段锁的实现

5.HashMap Hashtbale 的区别

6.Map 的适用场景

7.说说你知道的异常,exception error 的区别,说说try catch finally

8.说说你知道的http 状态码

9.数据库索引,为什么快,你一般在什么列的加索引

10.说说你知道的数据库引擎和区别

11.说说反射,什么场景会用到反射

12.类的加载过程

13.手撕算法,数组中找出第四大的数,若不存在,则找出第一大

三七互娱

一面

1.说说基础数据类型,int 多少字节,最大值,long 多少字节,最大值

2.说说红黑树和平衡二叉树(红黑树是个坑。。。)

3.说说类的继承和接口,面向接口编程的好处(这里说得不是很好。。。)

4.线程的状态,什么是死锁

5.生产者和消费者的代码实现

6.HashMap 原理(说了底层数据结构,如何计算哈希值,get,put 源码分析,扩容机制,并

发时链表成环原因)

7.哈希算法(说了直接定址法,折叠法(移位叠加和边界叠加),平方取中法。。。)

8.ArrayList linkedlist 的区别

9.说说什么时候会发生full gc,具体过程是怎样,CMS 的执行过程,存在的弊端

10.说说存储过程和触发器

11.有什么想问我的吗

二面

1.哪个项目你的印象最深刻,为什么

2.数据权限你是怎么控制的,说了一大堆。。。

3.你项目用到了oauth2.0 协议,你说一下这个协议。。。

4.你这个协议主要的用途是什么(我说允许第三方网站在用户授权的前提下访问在用户在服

务商那里存储的各种信息。

而这种授权无需将用户提供用户名和密码提供给该第三方网站。),然后他问还是需要用一

些信息去交换吧,

我说会跳转到服务商提供的登录界面,这个具体的方式不属于Oauth2.0 协议的范畴了,第

三方网站是不会得到这个密码的。。。

5.set

list,map 的用处区别,说了set list 的区别,然后arraylist linkedlist 的区别,HashMap

底层原理同一面。。。

6.你有面过其他公司吗,我说有,都挂了,他就问哪些方面被问倒了,我说了JVM 相关的,然后就问我java 内存区域,类的加载机制和双亲委派。。。

7.你觉得游戏公司的压力为什么大,我答得不清晰,不知道怎么答,他说换个问法吧,你更

向往哪种公司,我说技术氛围好的,能带我飞的,对于加班我是可以接受的之类的。。。


#面经##广州视源电子科技股份有限公司##三七互娱##校招##Java工程师#
全部评论
请问三七互娱笔试考什么
点赞 回复 分享
发布于 2021-08-23 09:03
楼主三七互娱结果如何?
点赞 回复 分享
发布于 2021-08-22 21:22

相关推荐

面试官人很好,态度和蔼可亲,没答出来时也会引导你去思考。由于是晚上面的,导致我白天一天都有点紧张,面的时候状态也不是很好,正常可能面试官提问完应该思考几秒再答,而我就像抢答一样一口气把所有会的都说出来,这样就导致逻辑比较混乱,东一句西一句的。首先是自我介绍,先把会的技术大致讲一下,由于我八股背的多所以着重讲了一下,Java,go,jvm,MySQL,Redis,计网,操作系统这些,然后一小部分闲聊,然后先问了一下项目,面试官问我这个项目是否落实之类的,直接坦言说是写的练手的,包括之前也写过IM通讯,外卖之类的。然后面试官就把提问的重点放在了八股上。先问了Java:类加载器(答:3种+自定义类加载器、tomcat、原因+双亲委派+好处)JVM参数(答:xmx,xms,newsize这些,问我是如何设定的,我回答是把内存分一半给堆,再把堆分一半给新生代,这方面确实不太了解)然后问了一下并发相关的:线程池(答:线程池的7个参数(忘了线程工厂和阻塞时间了),3个重要参数,还有线程如何启用,为什么要设计最大线程数之类的,提到Java栈默认分配1MB运行时不可以更改)AQS(答:先讲clh是自旋锁+list,然后是AQS在这个基础上做的两个优化,然后举了一下reentrantlock根据state如何获取资源)CAS(答:使用三个字段,aba问题,然后将通常搭配自旋锁实现,面试官问通常会自旋多少次,这个不太了解,答的100,然后问100次大概多少秒,回答微秒级,然后面试官讲了一下怎么做资源可能没用完,意识到可能还需要进行阻塞操作)然后考虑一下Linux命令(top,ps,如何使用管道符过滤线程和使用Linux启动线程没答出来)然后问Redis:持久化机制(答:三种aof,rdb,混合,aof的三个参数刷盘策略,rdb以快照保存,使用bgsave会使用子线程来保存不会阻塞,而aof虽然会阻塞但是只在写完数据后追加一条命令,不会太影响,然后是他俩的优缺点,还有混合是怎么保存数据的)集群模式(答:三种,主从复制到缺点再到哨兵机制,正常使用三个哨兵互相监督,主节点挂了投票选主哨兵然后选主节点,然后额外讲一下脑裂的问题,主节点进行数据更新然后把命令写入aof来同步从节点,最后cluster集群,如何实现,使用16383个哈希槽(艹答成16384了),先根据哈希码取余,再根据节点数取余决定放在哪个节点上,然后问了一下我会怎么选集群模式,首先是cluster的问题,会让管道操作之类的失效,然后哨兵会导致整个集群结构变得复杂,使用小项目可能会考虑哨兵,大的考虑cluster,然后考了一下cluster如果一个节点挂了怎么办,根据节点数重新取余然后数据转移,面试官说这么转移比较慢,有没有别的办法,我隐约记得使用一个类似环形数组的方式,想不起来了)然后考了一下MySQL的b+树(这方面的知识点太多了,导致我什么都想讲逻辑就比较乱,讲了一下聚簇索引,树的叶子节点对应着一张页16KB,MySQL有一个区的概念,把这些页放在同一个区中,这样叶子节点的双向链表遍历时速度更快,然后b+树的扇出比较大(非常二,说成扇度之类的,面试官以为说的是扇区)这样层数就比较小,一行1kb数据的话3层可以放心2000w数据)其他的暂时想不起来了算法是lru,面试官问要不要提示,我说写个,然后写了10分钟左右,说大概写好了,但是面试官指出了2个小错误,第一个马上就改回来了,第二个一直没看出来(大脑这时候已经停止工作了)反问:问学习建议,说根据实际的项目进行深入,考虑应该怎么做,还问了一下组里面是做Java的吗?面试官说他是做go的,组里什么语言都有,语言影响不大,连忙补充了一句我对go的底层有深入源码的学习)结束。总体感觉答得不太好,没有太体现出深度,细节也不够全面。
下一个更好呗:佬,我投完云智一直没消息,多久约的一面啊
查看14道真题和解析
点赞 评论 收藏
分享
评论
5
42
分享

创作者周榜

更多
牛客网
牛客企业服务