如何在jvm中使用Java字节码
如何在jvm中使用Java字节码?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
java基本数据类型有哪些
Java的基本数据类型分为:1、整数类型,用来表示整数的数据类型。2、浮点类型,用来表示小数的数据类型。3、字符类型,字符类型的关键字是“char”。4、布尔类型,是表示逻辑值的基本数据类型。
1、虚拟机视角
在执行Java代码时,首先需要将编译后的class文件装入Java虚拟机。装入的Java类将存储在方法区(MethodArea)中。虚拟机会在实际运行时执行方法区内的代码。JavaVirtualMachines将堆和栈分割为内存,以存储运行时数据。JavaVirtualProfessional将栈细分为面向Java方法的Java方法栈、面向本地方法(用C++写的native方法)的本地方法栈和存放各个线程执行位置的PC寄存器。
该调用将进入Java方法,而Java虚拟机会将在当前线程的Java方法栈中生成用于存储本地变量和字节码操作数的栈帧。该栈帧的大小是事先计算好的,并且Java虚拟机不需要连续地在内存空间中分布栈帧。Java虚拟机在退出当前执行的方法时,无论是正常还是异常,都将弹出当前线程的当前栈帧,并放弃该帧。
2、硬件视角
Java字节代码不能直接执行,因此Java虚拟机需要将字节代码翻译成机器代码。在HotSpot中,翻译过程有两种形式
是说明执行,把字节代码翻译成机器代码执行
是即时编译(Just-In-Timecompilation、JIT),将一种方法包含的所有字节代码编译成机器代码后执行。
看完上述内容,你们掌握如何在jvm中使用Java字节码的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网行业资讯频道,感谢各位的阅读!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341