面试真题

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

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

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

按难度

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

技术岗 · 难度:简单265 道 · 点击进入查看参考答案

简单Java
什么是多态?哪里体现了多态的概念?
结论:多态指相同接口在不同对象上有不同实现,调用时根据实际对象类型动态绑定执行对应方法,提升扩展性。 核心要点:体现于父类引用指向子类对象如Animal a=new Dog(); a.eat()调用Dog重写方法;编译看…
🎤 阿里巴巴
简单Java
为什么使用 Spring?Spring Boot 有哪些优势?你用过 Spring 全家桶的哪些组件?
结论:Spring通过IOC和AOP解耦简化企业开发;SpringBoot以自动配置、内嵌容器、起步依赖提升效率;常用组件如Spring MVC、Spring Data、Spring Security等。原理:1. Sp…
🎤 京东
简单Java
为什么有了基本类型还需要封装类?
结论:Java提供封装类(如Integer)因基本类型非对象,无法满足面向对象、泛型、集合及空值需求。核心要点:1.集合框架只能存对象,基本类型需自动装箱;2.泛型参数必须为对象类型,不能用int;3.封装类可赋null…
🎤 京东
简单Java
线程池了解吗?
结论:线程池用于复用线程、控制并发数。核心要点:1. 核心参数:核心线程数、最大线程数、空闲存活时间、工作队列、拒绝策略;2. 工作原理:提交任务时,若核心线程未满则创建线程执行,否则入队,队列满则创建非核心线程,达到最…
🎤 网易
简单Java
要想有序,用哪个 Map?
结论:需要key有序用TreeMap,需要插入或访问有序用LinkedHashMap。原理:HashMap无序;TreeMap基于红黑树,按key自然序或Comparator排序,操作O(log n);LinkedHas…
🎤 网易
简单Java
怎么保证 ArrayList 的线程安全?
结论:用Collections.synchronizedList、Vector或CopyOnWriteArrayList,或手动同步。原理:synchronizedList包装后方法级加锁,适合低并发;Vector方法加…
🎤 腾讯
简单Java
注解的原理知道吗?
注解是附加在代码上的元数据,本身不改变程序逻辑。原理:1. 定义:用@interface声明,隐式继承Annotation;可指定@Target和@Retention(SOURCE/CLASS/RUNTIME);2. 生…
🎤 网易
简单Java
ArrayList 用过吗?是线程安全的吗?
结论:ArrayList是Java基于动态数组的List实现,线程不安全;核心要点:1.底层Object[]默认容量10,扩容为1.5倍;2.多线程并发读写会导致数组越界、数据覆盖或抛ConcurrentModifica…
🎤 腾讯
简单Java
extends 关键字
结论:extends是Java实现类继承的关键字,用于子类继承父类,支持代码复用与多态。核心要点:1. 语法:class Sub extends Super,Java只支持单继承,一个类只能有一个直接父类;2. 成员继承…
🎤 网易
简单Java
HashMap 和 Hashtable 区别?
结论:二者均为哈希表实现,区别在线程安全、空值、API等方面。要点:1. 线程安全:Hashtable方法加synchronized,线程安全但慢;HashMap非线程安全,需外部同步或用ConcurrentHashMa…
🎤 腾讯
简单Java
HashMap 是无序的吧?
结论:HashMap是无序的,既不保证插入顺序也不保证访问顺序。原理:底层基于数组+链表/红黑树,key经hash扰动后取模定位桶下标,与插入先后顺序无关,遍历时按桶顺序和链表/树结构访问。对比:LinkedHashMa…
🎤 网易
简单Java
Java 中 Class 的生命周期有哪些阶段?
结论:Java中Class生命周期分为加载、连接、初始化、使用、卸载五个阶段。加载:类加载器从文件/网络获取字节码,在方法区建Class对象;连接含验证(文件格式、语义检查)、准备(静态变量分配内存并设零值,final常…
🎤 阿里巴巴
简单Java
Java的基本数据类型和占用大小 (8种)
结论:8种基本类型及大小:byte(1字节), short(2), int(4), long(8), float(4), double(8), char(2), boolean(无明确规定,通常1字节)。整数:byte8…
🎤 百度
简单Java
Java三大特性
结论:Java三大特性为封装、继承、多态。封装:通过访问控制隐藏属性,提供public方法,降低耦合提高安全;继承:子类 extends 父类复用代码,单继承避免多父歧义,可重写扩展;多态:编译时重载与运行时重写,父类引…
🎤 百度
简单Java
Java 的 HashMap 底层数据结构?
结论:JDK1.8后HashMap底层为数组+链表+红黑树。核心要点:1.数组Node[] table作为桶,根据key的hash&(n-1)定位;2.哈希冲突时节点以链表挂载;3.链表长度≥8且数组容量≥64时转为红黑…
🎤 网易
简单Java
Java 面向对象三大特性
结论:面向对象三大特性是封装、继承、多态。要点:封装指隐藏对象内部实现,通过private修饰成员、public方法暴露,降低耦合;继承指子类用extends复用父类非私有属性和方法,单继承,实现代码扩展;多态指同一接口…
🎤 腾讯
简单Java
Java 支持运算符重载吗?
结论:Java不支持用户自定义运算符重载,但部分运算符有内置特殊处理。要点:1.如+既可数值相加,也可字符串拼接(编译器优化为StringBuilder.append);2.不允许像C++那样定义operator+等方法…
🎤 京东
简单Java
JVM 的作用是什么?
结论:JVM是Java字节码运行引擎,核心作用为提供跨平台环境、自动内存管理与安全执行。要点:1.跨平台:将.class字节码解释为对应OS机器码,实现一次编译到处运行;2.内存管理:自动分配对象内存并通过GC回收,降低…
🎤 腾讯
简单Java
JVM 启动参数用过吗?
结论:用过,常见如堆大小、垃圾回收器及日志参数。核心要点:-Xms与-Xmx设定堆初始与最大值避免动态扩容开销;-Xmn设定新生代大小;-XX:MetaspaceSize与-XX:MaxMetaspaceSize控制元空…
🎤 京东
简单Java
JVM内存模型 方法区存什么
结论:方法区(JDK8后元空间)存储已加载类元数据、常量、静态变量等。核心要点:类信息包括类名、父类、接口、字段与方法描述符、访问修饰符;运行时常量池存编译期字面量与符号引用,运行时可动态加入(如String.inter…
🎤 搜狐
题目整理自公开面经,答案由校招宝自研生成,仅供参考