- Java平台无关性如何实现?首先我们看一张图片:
【java底层怎么学】
Java平台无关性.png
(1)Java源码首先要被编译成字节码,接着Java虚拟机通过编译好的.class文件进行解析 , 加载进内存,并执行相应的机器指令 , 。不同平台的指令集不同 , 如Linux、Win、IOS,Java虚拟机可以对.class文件解析成对应不同平台(操作系统)的机器指令,并加载进内存执行,这样一来,Java便实现一次编译(运行时无需再进行重新编译),到处运行,即跨平台运行.class文件 。
对java源代码进行编译编译后多出了.class文件
(2)我们可以在IDEA工具中执行命令行窗口,来查看.class字节码,通过命令javap -c来查看字节码
javap -c 可以反编译先进入src文件这就是.class文件的字节码 , 对应一些机器指令,但是这里并不是真正计算机执行的机器指令
- 为什么JVM不直接将源码解析成机器码去执行?-准备工作:无需每次执行时都进行各种检查 。-兼容性:也可以将别的语言解析成字节码,如再由JVM解析执行 。
经验总结扩展阅读
-
-
温州|行拘+退学处理!温州高校深夜通报两起男生骚扰女性事件处理进展
-
2023年1月9日安装门户好吗 2023年1月9日是安装门户的黄道吉日吗
-
许三观卖血记|活着是生命的力量,活得好是人生的态度
-
-
moss时尚圈过年了!来“蹦迪”的明星们用了什么?
-
-
-
-
-
-
-
-
抑郁症患者 抑郁症:若想走向康复与强大,你必须学会与自己的灵魂对话
-
-
vivoT1和荣耀50哪个好_vivoT1和荣耀50参数对比
-
-
-
2022年农历腊月初七开学典礼吉日 2022年12月29日适合开学典礼吗
-