24届java最新面经汇总,持续更新

Java

1.1.java泛型类型擦除及类型擦除带来的问题

1.2.泛型中的逆变与协变

1.3.多态,到底调用的是子类的方法还是父类的方法

1.4.接口和抽象类的区别

1.5.重载和重写

1.6.java中线程的状态,以及不同状态之间的切换

1.7.BIO/NIO/AIO

1.8.同步、异步、阻塞、非阻塞

1.9.序列化

1.10.深拷贝、浅拷贝、引用拷贝

1.11.对象头

1.12.JUC中的类及其适用场景

1.13.多线程交替输出abc

1.14.什么时候选择什么样的垃圾收集器

1.15.多线程执行小任务的时候,程序崩了怎么办,会不会有重复执行的情况,程序崩了,锁怎么释放?

1.16.java演示死锁场景

1.17.Spring Boot 和 Spring 的区别

1.18.Spring 启动流程

1.19.Spring中应用了哪些设计模式,举例说明

1.20.两种代理模式的区别,分别用到什么技术

1.21.Spring MVC执行流程

1.22.volitile关键字作用原理

1.23.synchronized关键字原理

1.24.HashMap\ConcurrentHashMap

1.25.Java内存模型

1.26.Java运行时数据区

1.27.Spring中Bean的创建过程

1.28.一个类从加载到卸载的全流程

1.29.双亲委派机制

1.30.包装类型和基本数据类型的区别,涉及常量池的问题

1.31.String.intern()方法

MySQL

2.1.慢查询排查优化思路

2.2.索引和键的关系

2.3.索引下推

2.4.索引覆盖

2.5.undolog、redolog、binlog

2.6.最左匹配原则

2.7.索引失效的情况

2.8.什么样的列适合加索引

2.9.MVCC

2.10.InnoDB与MyISAM的区别

2.11.为什么选择B+树做索引

2.12.手写sql

2.13.设计表结构

2.14.事务隔离级别

2.15.ACID

Redis

3.1.分布式锁的实现

3.2.Redis为什么快

3.3.Redis缓存一致性

3.4.Redis基本数据结构、底层数据结构都有哪些

3.5.Redis单线程吗?

3.6.缓存击穿、雪崩、穿透是什么?如何解决?

MQ

计算机基础

你可能感兴趣的:(Java基础,mysql,Redis,面试)