java jvm两种存储区的类型知识点讲解

 更新时间:2021年03月01日 15:22:22   作者:小妮浅浅  
在本篇文章里小编给大家整理的是一篇关于java jvm两种存储区的类型知识点讲解内容,有兴趣的朋友们可以学习下。

我们知道在jvm中存放了不少数据,那么存放数据的地方叫做存储区。想必大家还不知道存储区是分为两种类型的,常量缓冲池和方法区。相信很多人还没有接触到这个概念,本篇对java中jvm的存储区进行的内容的整理,下面一起来看看这两种存储取的概念和区别吧。

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是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域。 JVM屏蔽了与具体操作系统平台相关的信息,使Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。JVM在执行字节码时,实际上最终还是把字节码解释成具体平台上的机器指令执行。

1、JVM是java的核心和基础,在java编译器和os平台之间的虚拟处理器。它是一种利用软件方法实现的抽象的计算机基于下层的操作系统和硬件平台,可以在上面执行java的字节码程序。

2、JVM的体系结构:

类装载器(ClassLoader)(用来装载.class文件)

执行引擎(执行字节码,或者执行本地方法)

运行时数据区(方法区、堆、java栈、PC寄存器、本地方法栈)

到此这篇关于java jvm两种存储区的类型知识点讲解的文章就介绍到这了,更多相关java之jvm两种存储区的类型内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • shiro实现单点登录(一个用户同一时刻只能在一个地方登录)

    shiro实现单点登录(一个用户同一时刻只能在一个地方登录)

    这篇文章主要介绍了shiro实现单点登录(一个用户同一时刻只能在一个地方登录)的相关资料,非常不错,具有参考借鉴价值,感兴趣的朋友一起学习吧
    2016-08-08
  • 查看本地启动SpringBoot的本地端口号的几种方式

    查看本地启动SpringBoot的本地端口号的几种方式

    这篇文章主要介绍了查看本地启动SpringBoot的本地端口号的几种方式,文中通过代码示例讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-10-10
  • Spring-AOP-ProceedingJoinPoint的使用详解

    Spring-AOP-ProceedingJoinPoint的使用详解

    这篇文章主要介绍了Spring-AOP-ProceedingJoinPoint的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-03-03
  • Java线程池如何实现精准控制每秒API请求

    Java线程池如何实现精准控制每秒API请求

    这篇文章主要介绍了Java线程池如何实现精准控制每秒API请求问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • Java CompletableFuture使用方式

    Java CompletableFuture使用方式

    这篇文章主要介绍了Java CompletableFuture使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • 详解SpringCloud是如何动态更新配置的

    详解SpringCloud是如何动态更新配置的

    spring cloud在config配置管理的基础上,提供了consul config的配置管理和动态监听,那么这里面到底是怎样实现的,本文将为你揭秘,感兴趣的小伙伴可以跟着小伙伴一起来学习
    2023-06-06
  • 详解SpringBoot定时任务说明

    详解SpringBoot定时任务说明

    本篇文章主要介绍了详解SpringBoot定时任务说明,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • Java实现Socket的TCP传输实例

    Java实现Socket的TCP传输实例

    这篇文章主要介绍了Java实现Socket的TCP传输,实例分析了java通过socket实现TCP传输的相关技巧,需要的朋友可以参考下
    2015-05-05
  • js实现拖拽拼图游戏

    js实现拖拽拼图游戏

    这篇文章主要为大家详细介绍了js实现拖拽拼图游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • mybatis 遍历foreach中or拼接的操作

    mybatis 遍历foreach中or拼接的操作

    这篇文章主要介绍了mybatis 遍历foreach中or拼接的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02

最新评论