# Java
# 基础与面向对象
- 面向对象三大特性
- 面向对象和面向过程的区别是什么?
- 抽象类和接口的区别?
- 说说你对多态的理解?
- Java中的方法重载和方法重写有什么区别?
- Java中的final关键字可以修饰什么?被final修饰后有什么特点?
- equals方法和==的区别
- 堆和栈的区别?
- 解释一下Java中的泛型及其作用?
# 集合
- Java常见集合类有哪些?
- Map接口有哪些实现类?
- ArrayList和LinkedList的区别?
- ArrayList和普通数组的区别是什么?
- ArrayList扩容机制是什么?
- HashMap、HashSet、HashTable和ConcurrentHashMap的区别?
- Java中HashMap的底层实现是什么?
- HashMap的put方法的流程是怎样的?
- HashMap的扩容机制?
- HashMap为什么是线程不安全的?如何实现线程安全?
- Hash冲突的解决方案有哪些?HashMap是怎样解决Hash冲突的?
- concurrentHashMap如何保证线程安全?
- 哪些集合类是线程安全的,哪些是线程不安全的?
# 异常
# 字符串
# JVM
# 并发与多线程
- Java创建线程有几种方式?
- 线程start和run的区别?
- Java线程安全的实现?
- synchronized和lock、reentrantlock的区别是什么?
- 说一说你对synchronized的理解?
- volatile关键字的作用有哪些?
- volatile与synchronized的对比?
- 你知道Java中有哪些锁吗?
- 为什么要有线程池,线程太多会怎样?
- 说一说线程池的常用参数
- BIO、NIO、AIO的区别
# JDK
# Spring
- Spring,SpringBoot,SpringMVC和SpringCloud区别?
- 怎么理解SpringBoot?
- SpringBootStarter是什么?
- SpringBoot的启动流程是什么?
- SpringBoot的常用注解有哪些?
- SpringMVC的执行流程是什么?
- Spring的常见注解有哪些?
- Spring中的设计模式有哪些?
- Spring的循环依赖问题怎么解决?
- 说说你对SpringIOC的理解?
- 对SpringAOP的理解?
- Bean的作用域?
- Bean的生命周期?
评论
验证登录状态...