【面试经验】海康威视Java开发日常实习面经(已oc)

海康威视日常实习面经

笔者14号在实习seng上投递的简历,21号晚约了电面,当时在外面,就推迟了半个小时后。下面回想一下题目,估计记不全了。。

电面(两位面试官一起面的,估计有一位是主管)

1、自我介绍,问了一下项目

2、Java基础,详细介绍一下HashMap

  • 说了下put、get,1.7和1.8的不同实现,红黑树的转换机制

3、JDK1.7中HashMap与1.8的区别?循环链表?

  • 1.7头插法,1.8尾插法,并发 put 会导致 resize 链表头插导致指针指向错误,形成循环链表

4、有哪些并发的Map,介绍下原理?

  • 巴拉巴拉,古老Hashtable、Collections包装、ConcurrentHashMap,简单说了下原理

5、你提到了锁的概念,说下 Synchronized 和 Lock 的区别?

  • 老八股了,巴拉巴拉

6、看你熟悉MySQL,详细讲一下索引?

  • 说了MyISAM、InnoDB中索引的不同实现,聚簇索引,非聚簇索引,索引的使用原则,联合索引,最左前缀

7、让你建一张数据库表,你如何建?考虑什么?

  • 说了考虑遵循什么数据库范式,然后字段的数据类型,主键,索引的建立

8、看你熟悉JVM,说一下JVM内存区域?哪些是线程私有?

  • 巴拉巴拉,程序计数器,本地方法栈,虚拟机栈,堆内存,方法区。。。

9、对象分代理论知道吗?为什么要这样做?

  • 巴拉巴拉,在垃圾回收机制中,对象分为新生代,老年代,分别使用不同的垃圾收集算法,巴拉巴拉

10、那新生代能变成老年代吗?是怎样晋级老年代的?

  • 每个对象在 Hotpot虚拟机中都有一个对象头,其中存储了对象年龄,巴拉巴拉

11、分代收集理论的好处是什么?

  • 巴拉巴拉,尽可能减少 full GC 的产生

12、考虑这么一种情况,你突然发现请求变慢了,可能是什么原因?你会如何处理?

  • 答了可能是因为慢查询所导致,可以优化SQL查询,使用explain查看索引是否失效
  • 追问,还可能是什么原因?
  • 我支支吾吾
  • 我们刚刚讨论过JVM的垃圾收集(提示了我一下)
  • 我恍然大悟,答曰新生代的对象创建频繁导致 minor GC 频繁触发
  • 追问,那你怎么处理这种情况?
  • 可以在JVM层面扩大堆内存,也可以在代码层面可以定位到频繁创建对象的地方,再去具体考虑如何优化

已经收到 offer 了,流程是真的快,当天晚上面完,第二天中午 hr 就发 offer 了

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风落_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值