最近几家100-499人的公司,整合面经。 1、自我介绍 2、项目 3、线程的创建方式 4、sleep和wait方法的区别 5、CAS原理 6、synchronized锁的升级过程 7、MySQL方面做过哪些调优 8、索引失效的场景有哪些 基本上都在深挖项目,八股相对较少 9、接口与抽象类的区别 10、常用的设计模式都有哪些? 11、JVM的特性 12、堆内存与栈内存的区别 13、序列化与反序列化
时间有点久了,有些问题忘了,大致写一下 一面,60min 1. redis 的数据结构,zset 的结构 2. 实习介绍 3. MySQL 事务隔离级别 4. 写题1:判断单链表是否有环,找到入环节点 5 .写题2:写一个单例,用两种方法(这个我当时写了个双断检查的懒汉式,又写了个饿汉式) 6. 线程池 7. 别的就不太记得了,然后就是一些反问什么的 二面,60min 1. Java 的 int
1. Arraylist 和 Linklist 的区别 线程安全吗 2.bean的装配过程 3.spring的概念 4.Java序列化 5.线程安全 6.错误和异常 的区别 7.list map 的区别 8.hashtable 和 hashmap的区别 9.前端和后端之间的交互过程 10.运行异常和一般异常
11.16 一面电话面 1h 实习项目介绍 线程和进程的区别 进程间的通信方式 内核态和用户态的区别 HTTP GET 和 POST 区别(安全性、幂等性) 类加载、双亲委派、热部署 GC 算法,年轻代为什么使用复制算法 设计模式之单例、工厂模式 OOM 排查、CPU 负载过高如何排查 线程池参数、核心数量的设置标准 两个线程之间如何传递参数(应该是 ThreadLocal) Redis 的工作流
七月底投递,提前两个星期约面,面试官很好说话,过程中会不断对你的内容进行认可,个别没答出来的部分不会太追问,整体面试体验相当好。面试时间一小时 面试过程: 自我介绍 (转码,所以问了课程和学习相关内容)学了哪些课程/技术?怎么学的? 实习项目 课程项目 手撕: 完全二叉树,找到最下层最右边的点(层序/二分) 滑动窗口的最大值(优先队列?我当时抽了没写出来,直接拿队列模拟的) 二维数组搜索(拆成一维
想到啥就说啥。 先让做了个自我介绍,问项目里有啥难点(没难点)。 mysql相关,联合索引的最左前缀法则是什么,原理?查询顺序不符合最左前缀的自动优化 建立索引要考虑哪些。 分库分表的方式(水平垂直),为什么要分库分表,分库分表的策略 事务的特性 实现乐观锁和悲观锁。怎么用数据库实现呢 cas的缺点,解决方案 分布式锁的实现 锁释放失败的后果和解决方案,这里讨论了几种方案和对应缺陷,属于连环问 j
20min: 自我介绍; 项目只涉及到操作数据库吗? 项目的数据库是自己设计的吗? 接口与抽象类; 重写重载区别; run和start区别; 静态类一般定义在哪儿; 了解哪些设计模式; 工厂模式有哪些; 观察者模式了解吗; synchronized加在方法和加在static上区别; 了解哪些数据结构; hashmap是线程安全的吗?哪个是? 平时怎么学习的; 只做过一个项目吗? 技术方向的规划;(
网易互联网 9/19 45min 实习项目+深挖15min 怎么处理数据库多版本接入问题 Hbase MySQL事务隔离级别+实现 间隙锁 Mysql回表 聚簇索引、非聚簇索引 算法题:最长公共子序列,返回长度+最长序列 有点kpi的味道emmmm 但是还是希望能通过,今年太难了 #网易##网易面经##秋招##面经##网易互联网#
全程45min左右 1. 自我介绍 (java基础相关) 2. 接口和抽象类有什么区别? 3. hashtable和hashmap的区别 4. hashmap在什么情况下会产生线程不安全的情况 5. 既然hashmap不线程安全,有哪些常用的线程安全的map 6. 创建线程的方法,用callable的话,调用future的get(),会导致线程阻塞吗? 7. 线程池有哪几种 8. 线程池的核心工作
全程25-30min左右 1. 自我介绍 2. 实习相关的问题,聊了半天,引申问了redis和rocketmq的问题,比如rocketmq的设计之类的 3. java线程和golang协程的区别,golang协程知道怎么实现的吗 4. mysql,用到的隔离级别是哪个,可重复读是用什么怎么实现的,了解gap lock吗 主要还是围绕实习项目经历去问的,部门做基建的,也相对更愿意问底层实现和原理
全程35min左右 1.自我介绍 2.实习期间的项目,在校期间项目 3. redis持久化 4.那么有持久化的redis如果要做扩容,要怎么操作呢 5.jvm对象实例化过程 6. jvm内存分布情况,展开讲讲方法区 7. mysql性能优化有哪些方式 8.对于横向分表,你有什么分表的思路吗 9.反问 因为一下午面了三场,记忆有点混乱,应该还有很多问题,但我只能记得这么多了不好意思 #携程##J
总计18min左右 1.自我介绍 2.Mysql相关,两种引擎的特点,什么时候会用MyISAM,什么时候用InnoDB 3.InnoDB的事务隔离级别,平时用的是哪种 4.redis了解吗,说一下redis 5.创建线程有哪几种方法 6.线程用strat和run启动有什么区别 7.接口和抽象类的区别 接下来就是一些价值观问题,对于工作的看法之类 总结:总体感觉比较简单,好像就是走个流程,不知道是k
2022.09.23 美团一面 1.线程池如何创建,线程池工作原理; 2.线程池状态; 3.Java线程的状态; 4.讲讲阻塞队列ArrayBlockingQueue; 5.JVM内存分布; 6.讲讲G1收集器,停顿是否可预测; 7.垃圾回收算法; 8.了解ZGC收集器吗,讲讲染色指针,读屏障; 9.Volatile,是否保证原子性; 10.乐观锁,CAS原理; 11.TCP三次握手,四次挥手过程
2022.09.27 1.设计模式三大类,分别举点例子; 2.代理模式也创建新对象,但为什么不算创建型模式; 3.设计模式六大原则; 4.讲讲开闭原则; 5.JVM内存分区; 6.垃圾回收策略; 7.内存溢出和内存泄露; 8.讲讲java集合,每种类型介绍一下; 9.TCP如何保证可靠传输; 10.介绍TCP报文段; 11.了解版本控制吗,常用git指令; 12.git如何版本回滚; 13.你的学
9.27 ==和equals的区别? jdk 和 jre 有什么区别? 字符串常量池在哪块内存区域中? JVM有哪些内存区域? 哪些区域可能会发生内存溢出? 如何排查是哪个区域发生了内存溢出? 有哪些创建多线程的方式? 线程池有哪些种类?举例说明一个线程池的使用场景 volatile 和 synchronized 的区别? 分布式情况下如何保证线程的同步性? 如何实现分布式锁? Spring中be