主题
Java核心技术面试精讲
共 45 讲。
目录
- Java核心技术面试精讲
- 开篇词 - 以面试题为切入点,有效提升你的Java内功
- 第1讲 - 谈谈你对Java平台的理解?
- 第2讲 - Exception和Error有什么区别?
- 第3讲 - 谈谈final、finally、 finalize有什么不同?
- 第4讲 - 强引用、软引用、弱引用、幻象引用有什么区别?
- 第5讲 - String、StringBuffer、StringBuilder有什么区别?
- 第6讲 - 动态代理是基于什么原理?
- 第7讲 - int和Integer有什么区别?
- 第8讲 - 对比Vector、ArrayList、LinkedList有何区别?
- 第9讲 - 对比Hashtable、HashMap、TreeMap有什么不同?
- 第10讲 - 如何保证集合是线程安全的? ConcurrentHashMap如何实现高效地线程安全?
- 第11讲 - Java提供了哪些IO方式? NIO如何实现多路复用?
- 第12讲 - Java有几种文件拷贝方式?哪一种最高效?
- 第13讲 - 谈谈接口和抽象类有什么区别?
- 第14讲 - 谈谈你知道的设计模式?
- 第15讲 - synchronized和ReentrantLock有什么区别呢?
- 第16讲 - synchronized底层如何实现?什么是锁的升级、降级?
- 第17讲 - 一个线程两次调用start()方法会出现什么情况?
- 第18讲 - 什么情况下Java程序会产生死锁?如何定位、修复?
- 第19讲 - Java并发包提供了哪些并发工具类?
- 第20讲 - 并发包中的ConcurrentLinkedQueue和LinkedBlockingQueue有什么区别?
- 第21讲 - Java并发类库提供的线程池有哪几种? 分别有什么特点?
- 第22讲 - AtomicInteger底层实现原理是什么?如何在自己的产品代码中应用CAS操作?
- 第23讲 - 请介绍类加载过程,什么是双亲委派模型?
- 第24讲 - 有哪些方法可以在运行时动态生成一个Java类?
- 第25讲 - 谈谈JVM内存区域的划分,哪些区域可能发生OutOfMemoryError?
- 第26讲 - 如何监控和诊断JVM堆内和堆外内存使用?
- 第27讲 - Java常见的垃圾收集器有哪些?
- 第28讲 - 谈谈你的GC调优思路?
- 第29讲 - Java内存模型中的happen-before是什么?
- 第30讲 - Java程序运行在Docker等容器环境有哪些新问题?
- 第31讲 - 你了解Java应用开发中的注入攻击吗?
- 第32讲 - 如何写出安全的Java代码?
- 第33讲 - 后台服务出现明显“变慢”,谈谈你的诊断思路?
- 第34讲 - 有人说“Lambda能让Java程序慢30倍”,你怎么看?
- 第35讲 - JVM优化Java代码时都做了什么?
- 第36讲 - 谈谈MySQL支持的事务隔离级别,以及悲观锁和乐观锁的原理和应用场景?
- 第37讲 - 谈谈Spring Bean的生命周期和作用域?
- 第38讲 - 对比Java标准NIO类库,你知道Netty是如何实现更高性能的吗?
- 第39讲 - 谈谈常用的分布式ID的设计方案?Snowflake是否受冬令时切换影响?
- 周末福利 - 谈谈我对Java学习和面试的看法
- 周末福利 - 一份Java工程师必读书单
- 结束语 - 技术没有终点
- 结课测试 - Java核心技术的这些知识,你真的掌握了吗?