某公司Java开发面试题目记录-2021年5月15号周六

1 请进行自我介绍一下?
提前准备一下,说的会比较流畅,控制好时间。
2 简历上写稳定性相关的工作,面试官比较感兴趣,就问了很多公司稳定性怎么做的?
事前、事中和事后怎么做的。
3 你们用的什么垃圾回收机制? 这种垃圾回收机制的原理是怎样的? 画图解释。
4 synchronized是重量级锁吗? 是公平锁?volatile关键字的作用?
答:非公平锁
请问为什么是非公平锁?锁升级了解过吗?
synchronized和lock有什么区别? lock的公平锁是怎么实现的?
5 java中的HashMap是线程安全的吗? 怎么实现的? 记得回答不同版本间的差异。
concurrenthashmap是怎么保证线程安全的?
6 你们使用的mysql是什么存储引擎? 了解过其他的存储引擎吗?
工作三年,其实要求知识面比较宽一点。
7 写一个范围查询的sql,问存储引擎怎么执行的?
select a from t where id > 50; id是主键。是怎么一步步找到要的记录的。

8 项目中场景使用了事务?
public class Node {
public Node left;
public Node right;
public int value;
}
public Node func(Node node, int a, int b) {
}
给出一颗二叉排序树和两个节点的值,请问怎么找到两个节点的公共祖先?如果不存在返回空。
1 可以假设a不等于b
2 考虑找不到的情况
3 手写代码
因为不习惯手写代码,面试官给我他的idea使用,很温暖,谢谢。
不过要面试的话,还是要熟悉手写代码的,有的面试官可能没这样nice。

在旁边等了5分钟,然后被HR叫去二面。
1 自我介绍
2 系统架构图是怎么样的?分布式系统怎么保证数据一致性
感觉这个问题还是比较大的,可以提前准备一下。
然后有使用MQ,所以咨询怎么做幂等的。
3 知道的存储引擎有哪些?
TiDB有了解吗?
面试官想考察技术选型。
4 写一个慢查询sql如下
select a from t where a < 10000 and b > 5000 and c = “fool” order by a desc;
如何给数据库表添加索引进行优化?

我说创建 索引
a, b, c
或者
a b c
b c
c
不确定是否可以?
面试官说一条sql只可以使用一个索引。
如果c = “fool” 占c字段的1/10. c怎么处理?
5 写出系统架构图后, 面试官问怎么sheduler和MQ都做了异步化,怎么不进行合并,系统进行优化?
你们有多少模块? 多少开发? 系统模块合并优化可以节省人力。 我说shcheduler比较稳定,基本不需要人力维护
面试官考虑,面试者应该主动思考系统层面不合理的,或者提自己的建议给leader,评审。

总结:作为第一次面试,其实我是知道自己不足的,平时做需求,自己准备面试的时间比少。
面试的结果我是有预期的,但是一面写代码还是比较紧张,手有点抖,哎~
重要的基础知识还是非常非常重要的。好好准备。
重要的一点:写在简历上的东西,一定要好好准备,不然写在简历上,回答的不好,就说不过去了!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值