admin管理员组文章数量:1794759
java程序在哪里运行
1.java代码的运行模式:
可以在开发工具中运行,可以直接双击JAR文件运行,可以在命令行运行,无论是哪种运行方式,都离不开JRE,即JAVA运行时环境。这也是JAVA与C++的区别,C++是编译成机器码在CPU中运行。
2.为什么需要在虚拟机运行:
JAVA是一门高级程序语言,语法复杂,抽象程度高,直接在硬件上运行复杂的程序不现实,所以运行前需要进行转换。设计一个虚拟机,并通过编译器将JAVA程序转换成该虚拟机可识别的指令序列,也成为JAVA字节码,在有虚拟机进行解释。
虚拟机的另外一个好处就是,它带来了一个托管环境,这个托管环境能代替我们处理代码中冗长而容易出错的部分(内存管理、垃圾回收)。
3.JAVA虚拟机如何运行字节码程序:
HOTSPOT:
1.首先需要将它编译而成的class文件加载到java虚拟机中。
2.加载后的java类会被存放于方法区(Method Area)。
3.实际运行时,虚拟机会执行方法区内的代码。
4.每当调用进入一个JAVA方法,JAVA虚拟机都会在当前线程的JAVA方法栈中生成一个栈帧。
5.退出时销毁栈帧。
4.HOTSPOT中编译过程的两种方式:
1.解释执行:无需等待编译。
2.即时编译:实际运行速度更快。
HOTSPOT内置多个及时编译器 C1,C2,GRAAL(jdk10)。C1 client编译器 C2 Server编译器
JVM的栈分为java的方法栈和本地方法栈。每个方法调用会在栈上划出一块作为栈帧,一个栈是由多个栈帧构成。
版权声明:本文标题:java程序在哪里运行 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1686842787a109209.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论