JVM学习笔记

虚拟机的体系结构

  1. 数据类型
    分为两种:基本类型和引用类型。基本类型持有原始值,引用类型持有引用值
    这里写图片描述
    基本类型为:float、double、byte、short、int、long、char
    boolean、returnAddress.
    数据类型的取值范围
    这里写图片描述
  2. 类装载器子系统
    类装载器子系统顺序
    1)装载–查找并装载类型的二进制数据。
    2)链接–执行验证,准备,以及解析(可选)
    验证: 确保被导入类型的正确性。
    准备:为类变量分配内存,并将其初始化为默认值
    解析:把类型中的符号引用转换为直接引用。
    3)初始化 :把类变量初始化为正确的初始值

  3. 方法区
    java虚拟机中,关于被装载类型的信息存储在一个逻辑上被称为方法区的内存中。当虚拟机装载某个类型时,它使用类装载器定位相应的class文件,然后读入这个class文件。
    当虚拟机运行java程序是,它会查存储在方法区中的类型信息。
    方法区的大小不必是固定的,虚拟机可以动态调整。也不必是连续的,方法区可以在一个堆中自由分配。虚拟机允许用户或者程序员指定初始大小和最大最小。


  4. java程序在运行时创建的所有类实例或者数组都放在同一个堆中。而一个JAVA虚拟机实例中只存在一个堆空间,即是说所有线程都共享这个堆。由于一个JAVA程序独占一个JAVA虚拟机实例,因而每个程序都有它自己的堆空间。

  5. 垃圾收集
    因为在虚拟机中有一条在堆中分配信对象的指令,却没有释放的指令。正如在JAVA中无法决定何时回收内存,虚拟机把这个任务交给了垃圾收集器。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值