写在前面

100个问题搞定大数据理论体系
1000个问题搞定大数据技术体系

目录结构

  1. Java代码为什么要在虚拟机中运行?
  2. Java代码如何在虚拟机中运行?
  3. JVM运行时数据区如何划分?
  4. 堆和栈有何区别?
  5. 运行时栈帧结构是怎样的?
  6. Java堆是如何划分的?
  7. JVM为什么采用面向操作数栈而不是寄存器的架构?
  8. 方法区,永久代,常量池,元空间有何关系?
  9. String.intern()是如何实现的?
  10. Java如何使用直接内存?
  11. new关键字在虚拟机中是怎样的一个过程?JVM构造对象的步骤都有哪些?
  12. 对象在堆内存中的存储布局是怎样的?
  13. 对象字段的虚共享问题是指什么?如何解决对象字段的虚共享问题?
  14. 怎样判断对象是否已死?
  15. Minor GC和Full GC有什么区别?
  16. 如何理解GC日志?
  17. Java四种引用之间的区别?
  18. 垃圾收集算法有哪些?
  19. 安全点和安全区域是什么意思?
  20. JVM中有哪些垃圾收集器?
  21. G1 GC是什么?
  22. GC如何调优?
  23. JVM性能监控与故障处理工具有哪些?
  24. Arthas是什么?怎么用?
  25. Java方法调用的过程是怎样的?
  26. Java虚拟机是如何识别目标方法的?
  27. 虚方法调用在Java虚拟机中的实现方式?
  28. invokedynamic是如何实现的?
  29. Java8的Lambda表达式是如何实现的?
  30. JVM是如何处理异常的?
  31. JVM是如何实现反射的?
  32. class类文件的结构是怎样的?
  33. Java中this和super的实现原理是什么?
  34. 类加载的时机是什么?
  35. 类加载的过程是怎样的?
  36. 数组类型如何完成类加载?
  37. 双亲委派模型是什么?
  38. 哪些情况下类加载不需要遵守双亲委派模型?
  39. 有哪些常见的字节码指令?
  40. JavaAgent是什么?
  41. Java语法糖有哪些?
  42. 即时编译是什么?分层编译是什么?
  43. JVM的profiling是什么?
  44. Java 中的编译器分为哪些类型?
  45. 即时编译器有哪些优化?
  46. JVM优化Java代码时都做了什么?
  47. 什么是方法内联?
  48. 在什么情况下方法调用会被内联?
  49. 即时编译器的去虚化是什么?
  50. HotSpot虚拟机中的intrinsic是指什么?
  51. Java中的Unsafe类是什么?
  52. 逃逸分析,栈上分配,标量替换,同步消除,锁消除指的什么?
  53. 即时编译器对于字段读取及存储指令的优化是什么?
  54. 在什么情况下循环代码会被优化?JVM 针对循环代码有哪些优化?
  55. 在什么情况下对象分配会被优化?JVM中所有的对象只在堆上分配吗?
  56. 即时编译器的向量化优化是什么?SIMD 到底是什么?
  57. JDK9 的字符串底层原理是什么?
  58. 注解处理器的实现原理是什么?Lombok 的实现原理是什么?
  59. final字段的实现原理?
  60. 什么是Java内存模型?
  61. 主内存和工作内存是什么?
  62. 什么是happens-before原则?
  63. Java虚拟机是怎么实现synchronized的?
  64. volatile 的实现原理是什么?
  65. JNI的实现原理是什么?
  66. Java虚拟机如何进行性能测试?

参考文献

  1. 《深入理解Java虚拟机:JVM高级特性与最佳实践第3版》周志明著
  2. 极客时间专栏《深入拆解Java虚拟机》郑雨迪
  3. 极客时间专栏 《Java性能调优实战》 刘超
  4. 极客时间专栏 《Java核心技术面试精讲》 杨晓峰
  5. 《JVM G1源码分析和调优》彭成寒编著
  6. 《Java编程的逻辑》马俊昌著
  7. Java几种常量池区分(字符串常量池、class常量池和运行时常量池)
  8. 垃圾回收机制中,引用计数法是如何维护所有对象引用的?
  9. 可达性分析详解
  10. JVM ZGC介绍
  11. Java最前沿技术——ZGC ZGC介绍
  12. JVM之PC寄存器
  13. 最新阿里面试题:说一下JAVA中THIS和SUPER关键字的底层实现原理
  14. String的Intern方法详解
  15. 浅析java中的语法糖
  16. 不了解这12个语法糖,别说你会Java!
  17. Java中有哪些语法糖?
  18. ClickHouse官网
  19. On Java 8
上一篇