课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
java虚拟机是每一位java开发程序员都需要重点掌握的一个编程知识,而今天我们就一起来了解一下,java虚拟机数据存储区的区别都有哪些。
1、分类
JVM有两种类型的存储区:常量缓冲池和方法区。常量缓冲池用于存储类名、方法名和字段名以及字符串常量。方法区用于存储Java方法的字节码。JVM规范中没有规定这两个存储区域的具体实现。因此,Java应用程序的存储布局必须在运行过程中确定,这取决于具体平台的实现。
JVM是对Java字节代码定义的独立平台的规格说明,是Java平台独立性的基础。目前JVM还存在一些限制和不足,需要进一步完善,但无论如何,JVM的思想都是成功的。
2、比较分析
将Java源程序想象为我们的C++源程序,Java源程序编译后生成的字节代码相当于C++源程序编译后的80x86机器代码(二进制程序文件),JVM虚拟机相当于80x86计算机系统在80x86CPU运行的是机器代码,在Java解释器运行的是Java字节代码。
Java解释器相当于运行Java字节码的CPU,但这种CPU不是通过硬件实现的,而是通过软件实现的。Java解释器实际上是特定平台下的应用程序。只要实现了特定平台下的解释器程序,Java字节码就可以通过解释器程序在该平台下运行,这是Java跨平台的根本。目前,并非所有平台下都有相应的Java解释器程序,这也是Java不能在所有平台下运行的原因,只能在实现Java解释器程序的平台下运行。
知识点扩充:
JVM是JavaVirtualMachine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域。JVM屏蔽了与具体操作系统平台相关的信息,使Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。JVM在执行字节码时,实际上终还是把字节码解释成具体平台上的机器指令执行。
1、JVM是java的核心和基础,在java编译器和os平台之间的虚拟处理器。它是一种利用软件方法实现的抽象的计算机基于下层的操作系统和硬件平台,可以在上面执行java的字节码程序。
2、JVM的体系结构:
类装载器(ClassLoader)(用来装载.class文件)
执行引擎(执行字节码,或者执行本地方法)
运行时数据区(方法区、堆、java栈、PC寄存器、本地方法栈)
希望这辈子,最让你无悔的事情就是来达内学习!学习向来不是件易事,但无论过程多么艰难,希望你依然热爱生活,热爱学习!永远记得,达内将与你一同前行!现在扫码,立即领取万元课程礼包,助力0基础快速入行,为你梳理行业必备技能,全方位了解岗位发展前景!
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请在707945861群中学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。