目录
面试题
Java 基础
- 说说你对Fail-Fast的理解
- 什么是面向对象
- JDK 和 JRE 有什么区别
- == 和 equals 的区别是什么
- 两个对象的 hashCode()相同,则 equals()也一定为 true,对吗?
- final 在 Java 中有什么作用?
- String 属于基础的数据类型吗?
- Java中操作字符串都有哪些类?它们之间有什么区别?
- String str="i"与 String str=new String(“i”)一样吗?
- 如何将字符串反转?
- 普通类,抽象类,接口有哪些区别?
- 抽象类能使用 final 修饰吗?
- 重载和重写的区别
- Java 中 IO 流分为几种?
- BIO、NIO、AIO 有什么区别?
- Files的常用方法都有哪些?
多线程
- 并行和并发有什么区别?
- 线程和进程的区别?
- 守护线程是什么?
- 创建线程有哪几种方式?
- 说一下 runnable 和 callable 有什么区别?
- 线程有哪些状态?
- sleep() 和 wait() 有什么区别?
- notify()和 notifyAll()有什么区别?
- 创建线程池有哪几种方式?
- 线程的 run()和 start()有什么区别?
- 线程池都有哪些状态?
- 线程池中 submit()和 execute()方法有什么区别?
- 在 Java 程序中怎么保证多线程的运行安全?
- 多线程锁的升级原理是什么?
- 什么是死锁?
- 怎么防止死锁?
- ThreadLocal 是什么?有哪些使用场景?
- 说一下 synchronized 底层实现原理?
- synchronized 和 volatile 的区别是什么?
- synchronized 和 Lock 有什么区别?
- synchronized 和 ReentrantLock 区别是什么?
- 说一下 atomic 的原理?
spring/spring MVC
- SpringMVC 说说过滤器、监听器、拦截器有啥区别
- [SpringBoot系列](https://github. com/zhonghuasheng/Tutorial/iss