📡
首页
🏢
企业
📚
考试
📖
攻略
📰
日报
👤
我的
校招宝-应届生校园招聘情报站
聚合秋招/春招/实习/提前批
面试真题
技术面 + 非技术面高频问题 · 企业真题标题 + 校招宝自研参考答案
面试真题
2508 道
技术岗
641 道
非技术岗
1867 道
当前筛选
357 道
按赛道
技术岗以技术方向细分;非技术岗按「结构化 / 半结构化 / 无领导 / HR / 职能」细分
全部赛道(2508)
技术岗(641)
非技术岗(1867)
按方向/形式
点选即筛,再点「全部」还原
全部(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)
按企业
点选查看该公司全部题目
百度(161)
腾讯(139)
通用(87)
阿里巴巴(62)
网易(55)
京东(49)
中国储备粮管理集团有限公司(43)
字节跳动(34)
大华股份(11)
美团(10)
Momenta(8)
小鹏汽车(8)
深信服(8)
Shopee(7)
小米(7)
拼多多(7)
滴滴(7)
虎牙(6)
读书郎(6)
金山(6)
小红书(5)
快手(5)
搜狐(5)
闪送(5)
技术岗 · 难度:中等
357 道 · 点击进入查看参考答案
中等
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…
🎤 百度
中等
Java
IOC是什么,Bean是怎么初始化的
结论:IOC(控制反转)是将对象创建与依赖管理交给容器,降低耦合;Bean初始化是Spring按流程实例化并调用生命周期回调的过程。核心步骤:1. 容器扫描配置(注解/XML)得到Bean定义;2. 反射调用构造器实例化…
🎤 搜狐
中等
Java
Java常用集合 HashMap和ConcurrentMap区别
结论:HashMap线程不安全,ConcurrentHashMap线程安全,机制与性能不同。HashMap基于数组+链表/红黑树,无同步,多线程下数据覆盖或死循环;ConcurrentHashMap在JDK7用分段锁,J…
🎤 搜狐
中等
Java
Java线程模型,Thread类底层实现,线程和内核线程的对应关系,有什么优缺点?
结论:Java线程为1:1模型,Thread底层native映射内核线程;优点简单利用多核,缺点开销大。Thread的start0为native,调用pthread或CreateThread;每Java线程对应一个内核线…
🎤 阿里巴巴
中等
Java
Java序列化,serialVersionUID的作用,怎么让字段不序列化(除了transient还有吗?)
结论:serialVersionUID用于序列化版本控制,保证反序列化兼容;除transient外,static字段、实现Externalizable或自定义writeObject也可阻止字段序列化。原理:serialV…
🎤 阿里巴巴
‹ 上一页
第 7 / 18 页
下一页 ›
题目整理自公开面经,答案由校招宝自研生成,仅供参考
首页
企业
考试
攻略
日报
我的