写点什么

连续仨月霸占牛客榜首!京东 T8 呕心巨作:700 页 JVM 虚拟机实战手册

作者:Java你猿哥
  • 2023-04-23
    湖南
  • 本文字数:880 字

    阅读完需:约 3 分钟

什么是 Java 虚拟机

虚拟机是一种抽象化的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java 虚拟机有自己完善的硬体架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 Java 虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。

这种解释应该算是正确的,但是只描述了虚拟机的外部行为和功能,并没有针对内部原理做出说明。一般情况下我们不需要知道虚拟机的运行原理,只要专注写 java 代码就可以了,这也正是虚拟机之所以存在的原因--屏蔽底层操作系统平台的不同并且减少基于原生语言开发的复杂性,使 java 这门语言能够跨各种平台(只要虚拟机厂商在特定平台上实现了虚拟机),并且简单易用。这些都是虚拟机的外部特性,但是从这些信息来解释虚拟机,未免太笼统了,无法让我们知道内部原理。

而借此机会呢团长找到了一份从入门到基础的一份手册,现分享给大家!

说明:文章限于篇幅,只做部分展示,完整的文档小编已经整理好了,正在学习 java 虚拟机的朋友,获取方式见文章末尾~

第一部分

本部分将重点讲述 Java 技术体系所囊括的内容,以及 Java 的历史、 现状和未来的发展趋势。



第二部分

讲解了 JVM 的自动内存管理,包括虚拟机内存区域的划分原理以及各种内存溢出异常产生的原因;常见的垃圾收集算法以及垃圾收集器的特点和工作原理;常见虚拟机监控与故障处理工具的原理和使用方法。






第三部分

分析了虚拟机的执行子系统,包括类文件结构、虚拟机类加载机制、虚拟机字节码执行引擎。






第四部分

Java 程序从源码编译成字节码,再从字节码编译成本地机器码的这两个过程,从整体来看其实等同于一个传统编译器所执行的编译前端、后端过程。




第五部分

Java 语言和虚拟机提供了原生的、完善的多线程支持,使得它天生就适合开发多线程并发的应用程序。不过我们不能期望系统来完成所有与并发相关的处理,了解并发的内幕也是成为一位高级程序员不可缺少的课程。




结语

世界上并没有完美的程序,但我们并不因此而沮丧,因为写程序本来就是一个不断追求完美的过程。

需要获取这份手册的小伙可以【点击此处链接】即可免费获取~

用户头像

Java你猿哥

关注

一只在编程路上渐行渐远的程序猿 2023-03-09 加入

关注我,了解更多Java、架构、Spring等知识

评论

发布
暂无评论
连续仨月霸占牛客榜首!京东T8呕心巨作:700页JVM虚拟机实战手册_Java_Java你猿哥_InfoQ写作社区