面试时间:2019.08.15
面试时长:1小时30分钟
面试人:一个面试官+1个人力资源HR

一、面试官的问题

后来回顾了一下,这次的面试太糟了,好几个点当时都答不上来,当时还以为没什么要紧。

面试内容:

  1. java的基本数据类型有哪些?
  2. Integer装箱拆箱?Integer底层实现原理?Integer的equal()函数干了个啥?两个Integer变量判断值是否相等,equal还是用==符号,这两者有什么区别?new Interger(1)和Integer.valueOf()
  3. Java集合了解的有哪些?HashMap的底层实现原理是什么?hashCode(不了解hashCode)?。HashMap有什么问题(线程不安全)?如果想线程安全,该怎么办,用过?为什么你会想到ConCurrentHashMap,它的底层是怎么实现线程安全的,为什么它要用分段锁?
  4. ArrayList和LinkedList的底层实现原理?ArrayList底层是如何扩容的?Array.ValueOf的实现原理是什么?扩容后,数组引用的地址变化了吗?
  5. 怎么生成一个单例对象?单例对象的优化?为什么要这样优化?单例模式可以用在哪些地方,举例子?
  6. 了解线程吗?了解哪些线程的创建方式?Thread和Runnable的创建方式有什么区别?Runnable是接口吗?Thread的底层源码时怎样的,它怎么实现的?
  7. 了解锁吗,synchronized怎么用,比如说,有多个线程来实现一个计数器,你怎么实现?为什么要用synchronized块,synchronzed块里 除了要让计数值自增外,还要实现什么?计数值自增会引起同步问题,这不是一条语句(因为这不是一个原子操作,布拉布拉…)?synchronized底层实现原理,有读过synchronized的源码吗?(答:不知道,猜了一下底层实现原理,大概是用了悲观锁和乐观锁,或者存下来当前的线程对象,防止其他线程共同使用。瞎猜,实际上没这么简单,Thread实现Runnable接口,调用操作系统的线程,使用了Monitor,原子性、可见性、有序性、JAVA 内存模型、主内存、线程所在内存/缓存、…)
  8. 除了synchronized,还有没有了解过其他的锁(答:目前是知道有个lock,但是没有去了解过,也没使用过)?AQS、CAS原理了解吗(不了解,目前知道的它的底层使用了乐观锁和悲观锁)?说一下悲观锁和乐观锁,怎么用(答:说了一下悲观锁和乐观锁的含义,但是没有使用过),底层实现?
  9. 了解volatile吗?(只见看过,没了解和使用过。涉及到Java内存模型、原子性、可见性、有序性
  10. Spring、Spring MVC、Springboot这三者都做了个啥贡献,有什么区别?为什么要用Springboot?
  11. 说一下Spring的IOC容器有哪些?IOC是干什么用的?说一下控制反转的过程?IOC的工厂是怎么实现创建实例的?你怎么调用工厂创建的实例?除了Autowired方式外,还有什么其他调用实例的方式?IOC创建的实例是单例的吗(答:未做了解,但是我想,因为工厂是使用反射来创建实例的,所以不管待创建的那个类是不是单例类,它都能创建多个实例。不对。应该默认是创建的单例,但是也能创建多例)?
  12. 你还知道哪些关于SringBoot的内容吗,都说一下?
  13. https和http有什么区别(不知道)?
  14. Error与Exception有什么区别?你刚才说它俩继承了同一个类,那个类的类名叫啥?Exception有几种类型?RunTimeException与CheckedException的区别(答:没有深入了解过这俩。面完后查知,CheckedException发生在编译阶段。RunTimeException发生在运行阶段,只有运行时才知道会不会有异常,如空指针、数组溢出等)?
  15. 为什么你的项目里要对考试答案表分表(这个表的数据/行数会越来越大,布拉布拉…),你是采用什么规则对这个表分表的(按照年份分表,查找某个考试时,先查找该考试的年份,然后再找到对应的考试答案分表,布拉布拉…)?
  16. 现在我们有这样一个场景:对user表分表,你想采用什么规则来分表,登录的时候怎么找到对应的表?(答:用userId分表,但是不能解决登录时只有帐号和密码,没有userId的问题。用帐号username分表,缺点1是帐号只能由系统设置,不能由用户设置为想要的帐号;缺点2是,此时帐号必须与分表名相关联起来,不然不知道要从哪一个分表中查找)
  17. 给出一个场景:400人,同时抽奖,奖品数目是400个,讲一下抽奖的思路,你怎么设计,会有哪些问题,用什么数据结构?
  18. 算法题:怎么找出一个单链表的中间节点?(答:两种思路,一种最笨的方法是先遍历一遍,看看有多长,再遍历该长度的一半。第二种方法:用两个指针,其中一个指针每次走一步,另一个指针每次走两步,这样,当第二个指针总是第一个指针的两倍长度。很可惜,第二种方法我只想出了一半。)
  19. 你简历里,写了接口隐藏,你的实现思路是什么?怎么实现接口防刷?
  20. 给出一个场景:限制用户在1秒内只能访问某接口最多两次,讲一下实现思路?为什么不存储在表里?
  21. 你简历里写了有高并发经验,你是怎么理解高并发的?(布拉布拉…)你是怎么理解多线程同步的?(布拉布拉…)

二、人力资源HR面试问题:

  1. 感觉刚才面试官问的问题怎么样,还好吗?紧不紧张呀,来,喝点水。
  2. 介绍你在这几个项目里承担的角色,负责的任务?
  3. 这三个项目里,感觉哪个比较满意?为啥呀?
  4. 有女朋友吗?你哪一年的呀?家是哪里的呀?打算以后就在北京工作了吗?
  5. 以后在北京安家不啦?
  6. 你有什么疑问想问我吗?
  7. 你后面还有其他公司的面试吗?你可以先回去等消息哦, 因为还有其他的候选人,明天或者下个礼拜周一,我们给您发送一个最终的面试结果吧,哈哈哈!

猎聘公司面试(黄军威) 面试时间:2019.08.15 java后端相关推荐

  1. 猎聘公司管理系统 ——需求规格说明书

    猎聘公司管理系统 需 求 规 格 说 明 书 学    号: 姓    名: 指导教师: 软件学院 2018年5月30 修改记录 版本号 修改人 修改日期 修改说明 审核人 目录 1.        ...

  2. 猎聘网的第二次面试之路

    下面是我闲暇时总结的JS.CSS.算法总结,欢迎大家点赞.star-- 有趣实用的CSS效果 前端博客 传送门 LeetCode个人题解 传送门 正文 猎聘网是我接到的第二个面试,距离上一次面试半个月 ...

  3. boss直聘改回系统头像_Boss直聘VS猎聘,谁的营销广告更胜一筹

    作者 | Ben 每年的3月和4月,都是找工作的高峰时期.因而有"金三银四"之说. 根据最新发布的<寒冬下职场人生存状态报告>显示,39% 的职场人在"骑驴找 ...

  4. java 获取文件大小_阿里Java后端开发面经,面试官都替我感到绝望

    点关注,不迷路:持续更新Java相关技术及资讯!!! 内容源于群友投稿!记录一次阿里Java后端开发面经,分享给大家,感谢支持! 前言 秋招面试的第一家公司,也是第一次面试,真的超级紧张,从自我介绍到 ...

  5. 阿里Java后端开发面经,面试官都替我感到绝望

    前言 秋招面试的第一家公司,也是第一次面试,真的超级紧张,从自我介绍到项目介绍再到问题回答,面试表现真的是灾难级~ 由于我笔试做的还行,一面的时候准备的都是项目相关的问题,Java基础和框架相关的就没 ...

  6. 《Java 后端面试经》Java 基础篇

    <Java 后端面试经>专栏文章索引: <Java 后端面试经>Java 基础篇 <Java 后端面试经>Java EE 篇 <Java 后端面试经>数 ...

  7. 《Java 后端面试经》微服务篇

    <Java 后端面试经>专栏文章索引: <Java 后端面试经>Java 基础篇 <Java 后端面试经>Java EE 篇 <Java 后端面试经>数 ...

  8. 【名企面试经验-快手-校招提前批】【Java研发工程师】

    快手提前批Java Offer 一面(50min): 1.自我介绍 2.项目介绍 3.为什么项目中又有KVM虚拟机,又有Docker? 4.为什么项目中要用虚拟机,为什么不用物理机? 5.(手撕算法) ...

  9. 《Java 后端面试经》数据库篇

    <Java 后端面试经>专栏文章索引: <Java 后端面试经>Java 基础篇 <Java 后端面试经>Java EE 篇 <Java 后端面试经>数 ...

最新文章

  1. CVPR2020 | 利用NAS搜索针对对抗攻击的鲁棒神经网络结构
  2. 快速理解VirtualBox的四种网络连接方式
  3. 在阿里干了5年招聘,这10条建议我必须分享给你!
  4. python常用的十进制、16进制之间的转换
  5. USACO-Section1.3 Milking Cows (区间问题)
  6. ROS入门笔记(四):ROS实践(小海龟仿真)— ROS Topics
  7. 蔚来宣布部分车型涨价1万元
  8. php 简易验证码(GD库)
  9. 3.10 datetime
  10. 中国蟹养殖和捕捞现状分析,淡水养殖产量占比最高「图」
  11. mybatis java 帅帅 2021年5月17日20:36:25
  12. Jquery仿IGoogle实现可拖动窗口(源码)
  13. 计算机技巧数学,如何快速掌握数学技巧
  14. 封装HDLC协议实现两个路由器互相通信
  15. mac pdf分割方法,及其方便!!
  16. 考研人最想崩溃大哭的10个瞬间,看完第一条已泪奔!
  17. (已更新)Discuz手机模板:NVBING5-APP手机版,界面美观大方,可封装安卓/苹果APP,模板文件+插件+分类信息导入文件
  18. Latex提取与合并pdf文档(超实用)
  19. 北大软微2021计算机考研难度,2021北京大学软微计算机智能科技方向考研报录情况及备考经验分享...
  20. 蛰伏四年,他才是满帮成功上市背后的关键先生

热门文章

  1. 5 Why 分析法,一种用于归纳抽象出解决方案的好方法
  2. Pyecharts(四) —— 黑色星期五用户画像
  3. Java基础(22)-Java反射总览(把反射基本了解一遍)
  4. 关于B2B和B2C知识
  5. 小米荣获首张智能家居系统用户体验水平泰尔测评证书
  6. Ubuntu EOS2.0.6币服务安装
  7. multisimu仿真用电阻模拟继电器线圈,因为电阻功率太小,电流正常显示一会会变为0,是电阻烧坏的缘故
  8. 一款好用的一键重装系统软件 v2.8
  9. 信息学与数学、奥数的关系 信奥和数学的联系与不同
  10. excel 批量单元格中提取括号前的字符串和括号后的字符串