武汉高途后端开发面经 1.5h

主要写了我没有回答好的内容,其他都是普通八股+项目

1.callable和runnable的区别

我就回答了,callable可以携带返回值,runnable不能携带值。其他就不是很了解

2.如果有这个场景,平时线程池只需要调用两个核心线程就能实现所有任务,但是在高并发的时候,显然需要更多的核心线程,比如,我们可以可以不急着把任务放到等待队列,反而是增加核心线程数去执行,再放到任务队列中,你会怎么解决?

我就回答了,可以创建两个线程池,分别应对冷热场景,然后手动进行调整,冷的时候用核心线程少的,热的时候用核心线程大的

3.HashSet的去重,源码是如何解决的?

不太了解,当时就说了,可以通过比较是否是相同的,如果key相同的话就不能存储。

4.thread 的start和run的区别?

这个一点都不知

5. 先问了threadLocal,然后问了线程threadLocal的可见范围,以及如何让其他线程去看到这个线程的threadLocal值

我就回答了使用volatile修饰,然后进行数据共享

手写算法,写的是excel数字转字符,比如1=A,2=B,26=Z,27=AA

当时想的就是转26进制,忘记考虑边界条件了,比如26%26 = 0,0+'A'-1 = 'z'(小写),其他没啥问题

全部评论

相关推荐

03-27 12:17
已编辑
辽宁科技大学 Java
今天面的依旧是牛客搜不到面经的公司。总结:应该是这段时间面试体验最差的一家公司。面试官提问没有逻辑,口齿也不太清晰,喜欢打断回答。不知道是不是突然被抓来面试的,提问也没有重点,问题也描述不清楚,问就是你简历里写了,说就行了,后面鼠鼠已经有点摆了。(下面的问题列表经过豆包整理过,所以看起来还算挺有逻辑。。。)1:请做一下自我介绍2:关于你的实习经验,你主要做的是哪部分相关的东西?3:你说的营销系统主要指的是什么?4:你们发券会涉及到并发问题吗?是怎么处理的?5:单个用户的串行请求,不会影响响应时间吗?第二个请求来了是直接拦截还是怎么处理?6:你们的券是预热到 Redis 里面的吗?还是实时去查数据库?7:如果有学生信息、课程信息、成绩信息,用 MySQL 设计表结构,你会怎么设计?表之间的关联关系是什么?8:我要查某一门课程(比如计算机编程课)的所有学生平均成绩、最高成绩、最低成绩,你会怎么查?9:你日常使用的 AI 编程工具是哪个?10:设计一个 CSV 数据批量导入及数据展示的简单页面,前后端的设计和开发都是用 AI 编程工具完成的吗?11:针对 CSV 批量导入和数据展示的需求,你的提示词怎么写?第一步告诉 AI 的是什么?需求拆分的逻辑谁来做?12:针对学生、课程、成绩表,要查某课程的平均 / 最高 / 最低成绩,你的第一步提示词是什么?AI 生成 SQL 后,怎么把它落地到 Spring Boot 项目里,完整流程是怎样的?13:你用过哪些消息队列?14:RabbitMQ 怎么保证消息一致性?怎么基于 RabbitMQ 实现分布式系统的最终一致性?15:RabbitMQ 的 ACK 是什么?里面包含哪些信息?消费失败怎么处理?16:Redis 有哪些基本的数据类型?17:Redis 缓存雪崩是什么?怎么预防?18:Redis 缓存穿透是什么?怎么解决?19:Redis 缓存击穿是什么?怎么解决?20:Redis 是怎么实现分布式锁的?原理是什么?21:你比较熟悉哪些设计模式?在项目中怎么用的?22:策略模式和工厂模式的核心区别是什么?策略模式的策略体现在哪里?公共逻辑放在哪里?23:MySQL 的事务 ACID 特性是什么?分别由什么机制保证?Redo log、Undo log、MVCC 分别解决什么问题?24:MySQL 回滚操作依赖什么实现?25:MySQL 的幻读是什么?怎么解决?间隙锁的原理是什么?InnoDB 的锁机制是什么?锁级别有哪些?26:说一下 JVM 的内存模型?27:JVM 运行时数据区中,哪些区域是线程安全的?哪些是线程不安全的?本地方法栈存放的是什么内容?28:Java 中的 synchronized的实现原理是什么?应用场景是什么?29:Redis 分布式锁和 synchronized 单机锁的区别是什么?应用场景有什么不同?反问
查看29道真题和解析
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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