面试真题

技术面 + 非技术面高频问题 · 企业真题标题 + 校招宝自研参考答案
面试真题
2508 道
技术岗
641 道
非技术岗
1867 道
当前筛选
357 道

按赛道技术岗以技术方向细分;非技术岗按「结构化 / 半结构化 / 无领导 / HR / 职能」细分

按方向/形式点选即筛,再点「全部」还原

按难度

按企业点选查看该公司全部题目

技术岗 · 难度:中等357 道 · 点击进入查看参考答案

中等Java
Java 内部类和匿名内部类的作用?
结论:内部类增强封装与组织,匿名内部类简化临时实现。要点:1.成员内部类可直接访问外部类所有成员包括private;2.静态内部类不依赖外部类实例;3.局部内部类定义在方法内;4.匿名内部类无类名,在new接口/父类时直…
🎤 京东
中等Java
Java 内存模型(堆和栈的细节)
结论:栈线程私有存储方法调用与局部变量,堆线程共享存储对象实例。细节:栈由栈帧组成,每调用方法压入帧,含局部变量表、操作数栈、返回地址等,方法结束弹栈;堆分新生代(Eden、Survivor区)和老年代,新对象优先分配E…
🎤 阿里巴巴
中等Java
JUC 中的 `synchronized` 与可重入锁(`ReentrantLock`)的区别?
结论:synchronized是JVM内置关键字,自动加解锁;ReentrantLock是JUC提供的API锁,需手动释放但功能更灵活。区别:1.实现机制:synchronized基于monitor指令,Reentran…
🎤 京东
中等Java
JVM 内存管理与 C++ 有哪些区别?
结论:JVM内存由虚拟机自动管理(GC),C++由程序员手动管理(malloc/free或new/delete)。区别:1.分配方式:JVM对象基本在堆上由GC统一分配,C++可在栈或堆,栈对象自动析构;2.释放机制:J…
🎤 阿里巴巴
中等Java
JVM 内存结构与 GC 机制?
结论:JVM内存分为线程私有区(程序计数器、虚拟机栈、本地方法栈)与线程共享区(堆、方法区/元空间);GC主要回收堆中无效对象,采用分代收集。要点:1.内存结构:堆分新生代(Eden、Survivor)和老年代,栈存局部…
🎤 京东
中等Java
JVM 怎么进行垃圾回收的?
结论:基于可达性分析分代回收。核心要点:从GC Roots(栈帧局部变量、静态变量等)出发不可达对象判为垃圾;堆分年轻代(Eden+2 Survivor)与老年代;年轻代用复制算法(Minor GC),对象优先Eden分…
🎤 腾讯
中等Java
Spring 是怎么实现事务控制的?
Spring事务控制基于AOP和PlatformTransactionManager实现声明式事务。核心要点:1. 使用@Transactional注解标记方法或类,定义传播行为、隔离级别等;2. 底层通过AOP代理(J…
🎤 京东
中等Java
springboot启动注解是什么,内部的三个实际注解讲一下
SpringBoot启动注解是@SpringBootApplication,它内部组合了三个关键注解。核心要点:1. @SpringBootConfiguration:标识该类为配置类,本质继承@Configuratio…
🎤 百度
中等Java
Spring 底层实现机制了解吗?
结论:Spring底层以IoC容器为核心,通过反射与代理管理Bean生命周期及依赖。核心机制:1)启动:ApplicationContext加载配置(注解/XML),解析为BeanDefinition存入工厂;2)实例化…
🎤 京东
中等Java
Synchronized 和 Lock 有哪些理论上的理解?本质区别是什么?
结论:Synchronized是JVM内置关键字锁,Lock是API层面锁。本质区别:1.实现:Synchronized基于monitor对象,自动获取释放;Lock基于AQS队列,需手动unlock;2.功能:Lock…
🎤 阿里巴巴
中等Java
Synchronized 锁膨胀经历哪些过程?
结论:锁膨胀过程为无锁→偏向锁→轻量级锁→重量级锁。过程:1.无锁:对象头mark word无锁状态;2.偏向锁:首线程访问CAS记录线程ID,后续该线程直接进入;3.轻量级锁:其他线程竞争,撤销偏向锁,线程栈帧建锁记录…
🎤 阿里巴巴
中等Java
xxx.java 是如何变成二进制文件运行的?
结论:.java源文件经javac编译为.class字节码二进制,再由JVM加载、链接、初始化后解释或JIT编译运行。要点:编译:javac将源码编译成平台无关字节码文件,含魔数、常量池、方法指令等二进制结构;类加载:J…
🎤 腾讯
中等其他
如何进行性能优化
结论:性能优化需结构化推进:定位瓶颈→分层优化→机制引入→度量验证。1. 定位:借助监控(CPU、内存、IO、网络)、APM链路追踪、代码profiling定位慢点,避免盲猜;2. 分层优化:前端资源压缩、懒加载、减少重…
🎤 百度
中等其他
有没有遇到性能调优的瓶颈?
结论:遇到过性能调优瓶颈,常见于数据库、内存与CPU。答题思路:1. 明确现象如接口RT高;2. 用Arthas或SkyWalking定位慢方法,top查CPU,jmap查堆;3. 典型瓶颈为慢SQL全表扫、频繁GC、锁…
🎤 百度
中等其他
深拷贝和浅拷贝,怎么实现深拷贝?(多种方式)
结论:浅拷贝复制对象及基本类型,引用类型共享;深拷贝递归复制所有层级,完全独立。实现深拷贝多种方式:1. 序列化反序列化(Java用ObjectOutputStream、Python用pickle或json);2. 手动…
🎤 阿里巴巴
中等前端
加载一个 HTML 的浏览器是怎么渲染页面的?
结论:浏览器渲染流程为:解析HTML构建DOM树;解析CSS生成CSSOM;合并为渲染树;布局(Layout)算几何位置;绘制(Paint)成像素;合成(Composite)到屏幕。原理:HTML经分词成DOM,CSS优…
🎤 腾讯
中等前端
浏览器 DOM 树和 Vue 里的虚拟 DOM 树关系?
结论:DOM树是浏览器真实渲染的节点树,虚拟DOM是Vue用JS对象模拟的轻量描述树,两者为映射关系。核心要点:1.DOM树由HTML解析生成,操作真实DOM昂贵;2.虚拟DOM是普通JS对象(如{tag, props,…
🎤 腾讯
中等前端
浏览器怎样把资源显示出来?
结论:浏览器通过请求资源、解析构建树、布局绘制最终显示。核心步骤:1.网络请求:URL经DNS、TCP、HTTP获取HTML/CSS/JS等资源;2.解析:HTML生成DOM树,CSS生成CSSOM树,JS可修改DOM;…
🎤 百度
中等前端
网页完整的渲染过程
结论:浏览器渲染流程为解析HTML/CSS构建DOM与CSSOM,合成渲染树,布局绘制并合成显示。核心要点:1. 解析HTML生成DOM树,遇到CSS/JS会阻塞或异步;2. 解析CSS生成CSSOM树;3. 合并为渲染…
🎤 百度
中等前端
往列表插入元素,虚拟 DOM 树怎么处理?
结论:虚拟DOM通过同层diff算法对比新旧VNode,带key时可精准定位插入位置并更新真实DOM。处理流程:1. 生成包含新元素的VNode列表;2. patch阶段按key比对,无key则默认就地复用易导致状态错乱…
🎤 腾讯
题目整理自公开面经,答案由校招宝自研生成,仅供参考