海康威视研发一面

2021/9/23 海康威视一面

自我介绍

巴拉巴拉
就自己某个项目重点介绍。(我不入流的练手小项目一堆)

技术面

数据类型

八种基本类型
int取值范围
封装类
封装类与封装类,封装类与基本类型比较。
注意Integer在[-128,127]和这个区间之外是有区别的。在这个区间之内,Integer类型是IntegerCache.cache[x],这是一个静态类,所以可是使用==,在这个范围之外是Integer类型是直接new Integer(x)

jdk1.8之后的lamnda表达式会不会写?我不会写,我只在python里写过lamnda。

hashmap

hashmap
counrrenthashmap
要求从源码上解释。
如果两个同样的put相同的key,会发生什么?
。我瞎猜的说了一堆,但实际上是会报异常

线程池

线程池工作原理
为什么要使用线程池
工作队列
线程池运行中,突然电脑关机了,内存数据都会丢失,开机后怎么办?
我开始说了写备份到内存,其实就是持久化,但是这个不行,不可能时时刻刻写。
然后我就突然灵光乍现想起redis里的AOF,我就说记录任务队列,开机后回滚重新再执行一次就好了。面试官指导说我这个有点对,说是消息队列的一些框架的内容,分布式队列,但我消息队列我只知道是个什么东西,其他一无所知。

sychronized介绍一下

数据库

复合索引最左匹配,以及从源码上讲为什么要最左匹配
我只知道最左匹配,但我不知道原理

如果使用delete删除,是真的把这个记录删除了吗?
我没答出来。这个考的其实是mysql三种事务日志类型,redo log(重做日志)和binlog(归档日志),回滚日志(undo log)。其中undo log保存了事务发生之前的数据的一个版本,可以用于回滚,同时可以提供多版本并发控制下的读(MVCC),也即非锁定读。所以使用undo log可以回滚。

一个字段要求存的是不带符号的int,那怎么存负数?
我是说要么增加一个字段,要么用类似100001这种leetcode算法里经常出现的这种用法,我也不确定对不对

自增id为什么会用完,用完了怎么办?
因为删除操作不会改变自增id,自增id会一直增长,如果频繁删除和新增,那很快就会到达限制
用完了的话就只能更新,不能新增。这个我真不知道,我心里嘀咕是不是类似uid那样新造个类型的字符串id出来,但我没说。

如果数据库有100条值,数据库引擎会使用索引搜索吗?
因为innodb数据库引擎有个机制是,会对sql语句优化后会判断是用索引查找还是全盘扫描比较快,如果数据库殷勤认为全盘扫描更快就会使用全盘扫描,但100算不算少我就不知道了。反正我是这么说的

like语句什么时候能用什么时候不能用?
第一个就是%,那么会和通配符在一起导致%失效。还有就是text很长时也不行。当然这个我没答上来。

扩展

你是怎么学的这些知识?
我说我从网上看的,包括一些源码和一些别人写的文章
最近看了什么书?准备接下来学习什么内容?
因为发现今天问的很多问题其实都是因为并发造成的,所以我说对并发这块再了解了解

总结

面试体验还是很nice的,面试官是一个30岁的白白净净的大哥。
我中间为了形象好点换了个高清的外接摄像头,因为笔记本是八年前买的,内置相机画质很差。
面试官还是希望你是系统学习java知识的,所以会问你是怎么学习的,而不是恶补面经。
比较在意源码上的理解,也希望我能在源码上讲一下,我倒是看了不少源码,但是真的忘记了。
问的过程中会有引导,个人感觉还是一方面希望你能想起来,一方面是可以在引导中自己思考加学习吧。。。
使用的钉钉视频。
希望进二面吧。

#2022秋招##面经##软件研发工程师##海康威视#
全部评论
如果使用delete删除,是真的把这个记录删除了吗? delete并没有删掉底层用户数据, 只是将 记录中的 记录头信息中的 deleted_flag=1。 不删除的原因是,数据都是连续存储,如果是真的了,后续的数据记录都要移位。
16 回复 分享
发布于 2021-09-23 19:13
兄弟 你是哪组的
1 回复 分享
发布于 2021-09-23 19:04
当天出结果,我已经挂了。
1 回复 分享
发布于 2021-09-24 00:29
笔试完之后再无消息😅
1 回复 分享
发布于 2021-09-24 01:20
我想问问你们都有笔试吗?还是内推可以不用笔试
1 回复 分享
发布于 2021-10-20 17:51
两个put相同的key不是覆盖吗?
点赞 回复 分享
发布于 2021-09-23 19:14
面试官是曹?和我好像
点赞 回复 分享
发布于 2021-09-23 21:10
问这么底层啊?
点赞 回复 分享
发布于 2021-09-23 22:04
老哥你是研究生还是本科?为什么我问面试官,面试官说只有一个技术面,两周后出结构,hr面
点赞 回复 分享
发布于 2021-09-23 23:12
海康二面要求去线下,整无语了😓
点赞 回复 分享
发布于 2021-09-24 10:13
问了好多,我就15分钟问了下项目和java基础就结束了,是不是凉了哇。
点赞 回复 分享
发布于 2021-09-24 11:27
我也挂了 问的很奇怪
点赞 回复 分享
发布于 2021-09-24 14:41
海康第一志愿挂了参加二志愿还要重新笔试。都是开发。。
点赞 回复 分享
发布于 2021-09-24 14:51
我那个问的好多我不会,30多分钟,异步编排怎么使用,分布式锁redisson怎么使用,微服务各个服务之前怎么调用,怎么调用其他企业的服务,线程池的实现和原理,等等
点赞 回复 分享
发布于 2021-09-24 14:55
4399游戏2022届校园招聘进行中——火速内推,不限专业!!! 【关于4399】全球领先的中文娱乐平台之一,连续多年中国互联网企业50强 ,手握数款月流水过亿的游戏产品。 【笔试】第三批笔试9月28日19:00,面向9月27日23:59前完成网申的同学 【薪酬】12w-36w(根据岗位、面试情况确定薪酬) 【岗位】开放岗位类别多达40+,涵盖产品、开发、美术、市场、运营、职能六大类。  【工作地点】广州  【官网投递】http://web.4399.com/campus/  【移动端】https://hr.4399om.com/weixin/?r=job/agent&jobTableType=1 【内推码】96r7o(简历免筛选,直通笔试,内推截止倒计时一周!!!
点赞 回复 分享
发布于 2021-09-24 15:23
您好 挂了的话是当天官网显示面试没通过吗
点赞 回复 分享
发布于 2021-09-24 16:43
hr面是现场面。。。,有明天西安的兄弟吗
点赞 回复 分享
发布于 2021-09-24 22:41
我今天问了一个除了核心线程工作,其余线程不工作了是什么原因?不清楚😄。
点赞 回复 分享
发布于 2021-09-24 23:10
最左前缀可以结合复合索引的树结构来讲吧
点赞 回复 分享
发布于 2021-09-29 16:57
想问下 从源码上解释,这种问题从哪展开好,要怎么说,需要把hashmap和concurrenthashmap的每个方法都解释一下吗
点赞 回复 分享
发布于 2021-10-10 22:58

相关推荐

10-15 03:05
门头沟学院 Java
CADILLAC_:凯文:我的邮箱是死了吗?
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
10-15 14:22
点赞 评论 收藏
分享
评论
15
105
分享
牛客网
牛客企业服务