📡
首页
🏢
企业
📚
考试
📖
攻略
📰
日报
👤
我的
校招宝-应届生校园招聘情报站
聚合秋招/春招/实习/提前批
面试真题
技术面高频问题 · 企业真题标题 + 校招宝自研参考答案
面试真题
641 道
覆盖企业
49 家
技术方向
16 个
当前筛选
36 道
按技术方向
点选即筛,再点「全部」还原
全部(641)
数据库(114)
C++(85)
Go(82)
Java(69)
网络(65)
操作系统(54)
后端(39)
前端(37)
算法(31)
运维(22)
其他(17)
AI算法(13)
大数据(6)
测试(4)
产品(2)
Python(1)
按难度
简单(265)
中等(357)
困难(19)
按企业
49 家企业的真题,点选查看该公司全部题目
百度(160)
腾讯(138)
阿里巴巴(62)
网易(54)
京东(48)
字节跳动(33)
大华股份(10)
美团(9)
Momenta(7)
小鹏汽车(7)
深信服(7)
Shopee(6)
小米(6)
拼多多(6)
滴滴(6)
读书郎(6)
金山(6)
搜狐(5)
虎牙(5)
闪送(5)
小红书(4)
快手(4)
沥泉科技(4)
360(3)
分类:Java · 难度:中等
36 道 · 点击进入查看参考答案
中等
Java
@Transactional` 注解的原理?
结论:@Transactional基于Spring AOP和代理机制实现声明式事务。要点:1.原理:Spring容器扫描该注解,为Bean创建代理(JDK动态代理或CGLIB),在方法调用前通过TransactionIn…
🎤 百度
中等
Java
常见的内存泄露场景?
结论:内存泄露指已分配内存因引用未释放而无法回收,常见场景多样。核心要点:C++中new/delete不匹配、忘记释放指针或析构函数未清理;Java中静态集合(static Map)长期持有对象、未关闭数据库/IO流、T…
🎤 京东
中等
Java
常见设计模式,你用过哪些?
结论:设计模式分创建型、结构型、行为型三类,项目中常用单例、工厂、策略、观察者等。核心要点:单例确保全局唯一(双重检查锁注意volatile);工厂解耦对象创建;策略封装可互换算法(如支付路由);观察者实现事件通知(如S…
🎤 阿里巴巴
中等
Java
分布式锁、Redisson 的实现
结论:分布式锁常用Redis,Redisson是Java客户端封装。核心原理:1. 加锁用Lua脚本向Redis Hash结构写入锁名、线程UUID+重入计数,同时设置过期时间,保证原子性;2. 看门狗机制:未指定lea…
🎤 京东
中等
Java
介绍一下 AOP
结论:AOP(面向切面编程)将日志、事务等横切关注点与核心业务逻辑分离,通过动态织入实现模块化。核心要点:切面Aspect封装横切逻辑;切点Pointcut定义植入位置(如方法执行);通知Advice包括前、后、环绕等;…
🎤 京东
中等
Java
垃圾回收机制,JVM 常见的垃圾回收器?
结论:JVM GC通过可达性分析判垃圾并分代回收;常见回收器Serial、ParNew、Parallel Scavenge、CMS、G1等。原理:1.以GC Roots搜引用链,不可达即回收;2.堆分年轻代(复制算法Mi…
🎤 阿里巴巴
中等
Java
类加载,双亲委托机制
结论:双亲委托机制指类加载器收到请求时优先委派父加载器加载,父无法加载时才自己加载。核心要点:1)Java有三层加载器:Bootstrap(核心库)、Extension(扩展)、Application(应用);2)好处:…
🎤 阿里巴巴
中等
Java
什么是动态代理?
结论:动态代理是在程序运行时动态生成代理对象,在不修改原类代码的情况下增强方法功能,常用于AOP场景。 核心要点:JDK动态代理基于接口,通过Proxy.newProxyInstance和InvocationHandle…
🎤 京东
中等
Java
手撕:得到两个线程的计算成果
结论:通过Callable+Future或CountDownLatch等并发工具获取多线程执行结果。核心要点:1. Runnable无返回值,需用Callable接口配合FutureTask或线程池submit返回Fut…
🎤 京东
中等
Java
手撕定时器实现
结论:基于优先队列(最小堆)和单线程轮询实现简单定时器。核心要点:1. 定义任务类包含执行时间戳和执行体Runnable;2. 用PriorityQueue按执行时间升序排序;3. 工作线程循环:取堆顶,若队列空则wai…
🎤 百度
中等
Java
手撕读写锁(ReadWriteLock)
结论:通过状态计数与条件等待实现允许多读单写的读写锁。核心要点:1. 维护readCount读计数、writeCount写计数(或AQS state高低位);2. 获取读锁:当writeCount==0时CAS增加rea…
🎤 快手
中等
Java
逃逸分析的原理、应用场景和优缺点
结论:逃逸分析是编译器(如JVM JIT)判断对象作用域是否逃出当前方法/线程的技术。原理:通过数据流分析,若对象仅方法内局部使用且不被外部引用(不逃逸),则可栈上分配、同步消除、标量替换。应用场景:方法内创建局部对象未…
🎤 哔哩哔哩
中等
Java
为什么链表要转换成红黑树?
结论:链表长度过大时查找复杂度退化为O(n),转换为红黑树可将查找、插入、删除稳定控制在O(log n)。原理:以HashMap为例,当桶中节点数超过8且表容量≥64时链表转红黑树;红黑树是自平衡二叉搜索树,通过颜色翻转…
🎤 网易
中等
Java
线程池的核心参数,给了一个线程池问有什么问题?
结论:线程池核心参数有7个,给定线程池需检查参数组合是否合理。核心参数:corePoolSize(核心线程数)、maximumPoolSize(最大线程数)、keepAliveTime(空闲线程存活时间)、workQue…
🎤 阿里巴巴
中等
Java
序列化写入后读出的对象变化(版本不一致问题)
结论:序列化写入后若类版本不一致,反序列化可能失败或字段丢失。要点:Java靠serialVersionUID标识版本,读写值不同抛InvalidClassException;兼容变更(增删字段)可保持同serialVe…
🎤 阿里巴巴
中等
Java
一条 Java 语句从创建到执行的全过程,类加载流程,JDK 内置类如何被启动类加载器加载?
结论:Java语句执行经历编译、类加载、执行三阶段。类加载流程:1. 加载:ClassLoader读.class二进制入方法区,建Class对象;2. 链接:验证字节码、准备静态变量零值、解析符号引用;3. 初始化:静态…
🎤 阿里巴巴
中等
Java
针对 Hashtable 的问题,有什么更好方案?
更好方案是ConcurrentHashMap。核心要点:Hashtable全表synchronized锁导致并发阻塞;ConcurrentHashMap(JDK1.8)用CAS+桶头synchronized细粒度锁,支持…
🎤 腾讯
中等
Java
HashMap 扩容机制?
结论:HashMap默认初始容量16,负载因子0.75,元素数超容量*负载因子时触发扩容,新容量为旧容量2倍。原理:resize()方法创建新数组,重新分配节点;JDK1.8使用(e.hash & oldCap) == …
🎤 京东
中等
Java
HashMap 源码分析,是不是线程安全?
结论:HashMap线程不安全,禁止在多线程并发写场景下直接使用。原理:JDK1.8源码中putVal()无同步控制,多线程同时put时可能出现:1) 同桶位节点覆盖导致数据丢失;2) 扩容期间线程A转移链表,线程B同时…
🎤 阿里巴巴
中等
Java
hashmap底层原理,有哪些线程安全的map
结论:HashMap底层为数组+链表+红黑树,线程安全Map有Hashtable、Collections.synchronizedMap、ConcurrentHashMap。原理:HashMap对key的hashCode…
🎤 百度
第 1 / 2 页
下一页 ›
题目整理自公开面经,答案由校招宝自研生成,仅供参考
首页
企业
考试
攻略
日报
我的