深入java虚拟机

时间:2021-07-16 | 标签: | 作者:Q8 | 来源:网络

小提示:您能找到这篇{深入java虚拟机}绝对不是偶然,我们能帮您找到潜在客户,解决您的困扰。如果您对本页介绍的深入java虚拟机内容感兴趣,有相关需求意向欢迎拨打我们的服务热线,或留言咨询,我们将第一时间联系您!

   java虚拟机实例的生命周期:java虚拟机的职责是负责运行一个java程序。当启动一个java虚拟机时,一个虚拟机实例便诞生了。当该程序关闭退出时,这个虚拟机实例也随之退出。







  如果一台主机上同时运行3个java程序,就会产生3个java虚拟机实例。
  java虚拟机通过调用某个初始类的main方法来运行一个java程序。
  Java代码 
  public class HelloWorld {
  public static void main(String[] args) {
  System.out.println("Hello World!");
  }
  }
  java虚拟机规范中,一个虚拟机的行为是分别按照子系统,内存区,数据类型以及指令这几部份组成的。
  当java虚拟机运行一个程序时,它需要内存来存储许多东西,例如,字节码,从已装载的class文件中得到的其他信息,程序创建的对象,传递给方法的参数,返回值,局部变量,以及运行的中间结果。i每个java虚拟机都有一个方法区和一个堆,它们是由所有线程共享的信息流推广工作信息
  当每个新线程被创建时,它都会得到自己的pc寄存器以及一个java栈。如果线程正在执行的是一个java方法,那么寄存器大的值总是指向下下一条将被执行的指令,而它的java栈总是存储该线程中的java方法调用的状态--包括它的局部变量,被调用时网站建设论坛传递过来的参数,它的返回值,以及运算的中间结果。
  java栈是由许多栈帧组成,一个栈帧包括一个java调用的状态。当线程调用一个java方法时,虚拟机压入一个新的栈帧到该线程的java栈中;当该方法返回时,这个栈帧被从java栈中弹出并抛弃。
  java虚拟机没有寄存器,其指令使用java栈来存储中间数据。这样设计是为了使得java虚拟机的指令集尽量紧凑。
  数据类药店宣传单
  java虚拟机的数据类型包括
  基本类型:数值类型,boolean,returnAddress
  引用类型:类类型,接口类型,数组类型
  java虚拟机为每个载入的类型存储以下信息,
        该类型的基本信息、该类型的常量池、字段类型、方法信息。 除了常量之外的所有类(静态)变量, 一个到类classloader的引用,一个到class类的引用。
        以上就是小编今天介绍的全部内容。
深入java虚拟机

上一篇:备份虚拟机及将封装所需文件导入到虚拟机中教
下一篇:java栈


版权声明:以上主题为“深入java虚拟机"的内容可能是本站网友自行发布,或者来至于网络。如有侵权欢迎联系我们客服QQ处理,谢谢。
相关内容
扫码咨询
    深入java虚拟机
    打开微信扫码或长按识别二维码

小提示:您应该对本页介绍的“深入java虚拟机”相关内容感兴趣,若您有相关需求欢迎拨打我们的服务热线或留言咨询,我们尽快与您联系沟通深入java虚拟机的相关事宜。

关键词:深入java虚拟机

关于 | 业务 | 案例 | 免责 | 隐私
客服邮箱:545321@QQ.com
电话:400-021-1330 | 客服QQ:545321
沪ICP备12034177号 | 沪公网安备31010702002418号