java跨平台中的平台指操作系统还是指令集?

2022-09-24 11:09:38

java跨平台中的平台指的是不同的指令集

看来你对jvm理解的不够深刻,比如基于 x86 指令集,你所学的 mov jmp xchng cmps lods 是一套汇编指令,而 jvm 也有自己的汇编指令(如 iadd,ifeq,goto,getstatic 等等),但是不论是哪种汇编代码,最终都会被各自的汇编器转换为 相同的 机器码。所以可以看出你对java跨平台特性中的 平台 二字的理解还局限于跨平台就是跨不同的操作系统吧?实际上 java跨平台中的平台指的是不同的 指令集,你到官网下载的时候可以看到 针对 arm,x32,x64 这些不同指令集所对应的jdk版本,至于还存在windows版 , linux版 和 mac版的jdk,是和jdk本身有关系,和 java 的跨平台特性没关系,当一个windows系统 和 一个 linux 系统都同时 使用 基于x86 指令集的 cpu 时,同一个class文件在这两个系统上最终被转换成的机器码是一模一样的

  • 作者:偏执的执
  • 原文链接:https://blog.csdn.net/qq_34967644/article/details/124580914
    更新时间:2022-09-24 11:09:38