高德Java后端一面(秒挂)

暑期实习

面了一个半小时,汗流浃背了

每个问题问到不会为止

1. 自我介绍
2. Go的channel底层是啥
3. Go的锁底层是啥
4. 说一下Java的内存模型
5. JMM知道吗,说一下
6. volatile底层怎么实现的
7. 说几个happen-before的场景
8. 原子性是如何保证的,从底层入手,系统原语级别
9. 线程池知道吗,说一下核心参数,任务处理流程
10. cpu密集、io密集核心线程怎么设置,为什么这么设置
11. tomcat线程池跟java线程池有啥区别
12. 创建线程池是用什么方法
13. GC知道哪些
14. 说下G1怎么实现
15. 说下CMS怎么实现
16. CMS和G1的优缺点,问很细
17. G1存在什么问题,为什么内存占用大
18. 线程安全的HashMap都有哪些
19. HashMap底层怎么实现
20. HashMap扩容是怎么扩的,详细说说
21. ConcurrentHashMap底层怎么实现,分段锁怎么加
22. Spring用过吗,说下AOP和IOC原理
23. Spring怎么解决循环依赖
24. Spring事务传播知道吗
25. RPC框架知道哪些,底层原理是啥(主要问Dubbo)
26. Dubbo的服务发现、服务注册知道吗,讲一下
27. Dubbo用的什么序列化协议,grpc呢
28. 一次rpc通信的详细流程,通信双方发生了什么,消息怎么(反)序列化的
29. Redis持久化介绍下
30. AOF有什么缺点,怎么解决
31. AOF的性能问题怎么解决
32. Redis热点数据存在什么问题,怎么解决
33. Redis实现分布式锁怎么实现,锁续期怎么实现
34. Redis常见数据类型
35. String底层怎么实现的
36. zset底层怎么实现的
37. zset对跳表做了什么优化
38. 项目相关,问的很细节,并且提出项目中的问题
39. raft和paxos的区别
40. raft做了哪些优化使得其更易于理解
41. 手撕中等难度dp题
42. 消息队列知道哪个
43. Kafka的延时消息讲下
44. 反问
全部评论
没碰过这么难的面试
25 回复 分享
发布于 2024-05-16 23:28 江苏
是在用刑吗?
10 回复 分享
发布于 2024-06-21 11:40 重庆
酣畅淋漓的八股拷打
8 回复 分享
发布于 2024-05-20 00:34 山西
汗流浃背,对应届生要求太高了吧
8 回复 分享
发布于 2024-05-19 16:42 浙江
为什么面java还问go的
4 回复 分享
发布于 2024-06-15 20:47 天津
这是要八股之神啊😭
3 回复 分享
发布于 2024-05-22 01:37 江苏
大佬问一下,Java的内存模型不就是JMM吗,为什么要重复问两次
3 回复 分享
发布于 2024-05-17 21:20 江苏
这居然是一面😭
2 回复 分享
发布于 2024-06-12 16:51 河北
java真的是卷中卷
2 回复 分享
发布于 2024-06-12 15:47 陕西
一个都不知道怎么办?学的都是408
1 回复 分享
发布于 2024-06-23 18:18 广东
m
1 回复 分享
发布于 2024-05-30 17:55 河南
43个问题的拷打,顶住了吗?
1 回复 分享
发布于 2024-05-23 15:40 广东
woc实习还是春招啊酱紫问
1 回复 分享
发布于 2024-05-20 16:04 湖南
高德的面试确实顶中顶
1 回复 分享
发布于 2024-05-17 16:31 湖南
酣畅淋漓
点赞 回复 分享
发布于 2024-07-03 17:40 山西
坐牢
点赞 回复 分享
发布于 2024-06-28 18:05 黑龙江
这么难?
点赞 回复 分享
发布于 2024-06-24 01:38 辽宁
八股盛宴
点赞 回复 分享
发布于 2024-06-23 16:04
佬是go选手吗
点赞 回复 分享
发布于 2024-05-31 21:10 江苏
楼主面的是哪个岗位呀,我上周日面完java poi二面,面试官说一周内hr会联系我,到现在还没消息,要主动联系hr吗😭
点赞 回复 分享
发布于 2024-05-23 21:30 北京

相关推荐

07-28 15:15
门头沟学院 Java
面试八股环节还好,但是我是力扣战士,面试官让在编译器上写代码类都不会怎么写了,两个算法,字母异位词和策略模式,只写了方法,力扣战士凉透了,希望大家平时还是要在编译器上做题策略模式等一些设计模式,希望大家也进行默写,别像我一样会背不会写字母异位词import java.util.*;public class Main {public static List<List<String>> groupAnagrams(String[] strs) {// 用于存储分组结果的映射,键为排序后的字符串,值为对应的字符串列表Map<String, List<String>> anagramGroups = new HashMap<>();for (String s : strs) {// 将字符串转换为字符数组并排序char[] chars = s.toCharArray();Arrays.sort(chars);String sortedStr = new String(chars);// 如果映射中不存在该键,则创建一个新的列表anagramGroups.computeIfAbsent(sortedStr, k -> new ArrayList<>());// 将当前字符串添加到对应的列表中anagramGroups.get(sortedStr).add(s);}// 返回映射中的所有值(即所有分组)return new ArrayList<>(anagramGroups.values());}public static void main(String[] args) {// 示例输入String[] strs = {"eat", "tea", "tan", "ate", "nat", "bat"};// 调用方法获取分组结果List<List<String>> result = groupAnagrams(strs);// 输出结果for (List<String> group : result) {System.out.println(group);}}}策略模式// 支付策略接口interface PaymentStrategy {void pay(double amount);}// 微信支付实现class WechatPay implements PaymentStrategy {@Overridepublic void pay(double amount) {System.out.println("使用微信支付:" + amount + "元");// 微信支付具体实现逻辑}}// 支付宝实现class Alipay implements PaymentStrategy {@Overridepublic void pay(double amount) {System.out.println("使用支付宝支付:" + amount + "元");// 支付宝支付具体实现逻辑}}// 银行卡支付实现class BankCardPay implements PaymentStrategy {@Overridepublic void pay(double amount) {System.out.println("使用银行卡支付:" + amount + "元");// 银行卡支付具体实现逻辑}}// 支付上下文(策略持有者)class PaymentContext {private PaymentStrategy strategy;public PaymentContext(PaymentStrategy strategy) {this.strategy = strategy;}public void setStrategy(PaymentStrategy strategy) {this.strategy = strategy;}public void executePayment(double amount) {strategy.pay(amount);}}// 主类和测试代码public class Main {public static void main(String[] args) {// 创建支付上下文PaymentContext context = new PaymentContext(new WechatPay());// 使用微信支付context.executePayment(100.0);// 切换为支付宝支付context.setStrategy(new Alipay());context.executePayment(200.0);// 切换为银行卡支付context.setStrategy(new BankCardPay());context.executePayment(300.0);}}
查看2道真题和解析
点赞 评论 收藏
分享
评论
56
293
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务