栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

字节码文件的跨平台性

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

字节码文件的跨平台性


Java 语言是跨平台的(write once, run anywhere)当 Java 源代码成功编译成字节码后,如果想在不同的平台上面运行, 则无须再次编译但是 这个优势不再那么吸引人了。Python、PHP、Perl、Ruby、Lisp 等有强 大的解释器 ,跨平台似乎已经快称为一门语言必选的特性Java 虚拟机:跨语言的平台Java 虚拟机不和包括 Java 在内的任何语言绑定,它只与"Class 文件"这 种特定的二进制文件格式所关联。无论使用何种语言进行软件开发, 只要能 将源文件编译为正确的 Class 文件,那么这种语言就可以在 Java 虚拟机上执行,可以说,统一而强大的 Class 文件结构,就是 Java 虚拟机的基石、桥梁。1606747481563JVM的特性所有的 JVM 全部遵守 Java 虚拟 机规范,也就是说所有的 JVM 环境都是一样的, 这样一来字节码文件可以在 各种 JVM 上进行。 JVM官方文档规范: https://docs.oracle.com/javase/specs/index.html,想要让一个 Java 程序正确地运行在 JVM 中,Java 源码就是必须要被编译 为符合 JVM 规范的字节码 ,所以在把java文件转换为 JVM可以识别的Class文件,需要编译器的完成,也就是javac, 称为前端编译器前端编译器的主要任务就是负责将符合 Java 语法规范的 Java 代码转换为 符合 JVM 规范的字节码文件javac 是一种能够将 Java 源码编译为字节码的前端编译器javac 编译器在将 Java 源码编译为一个有效的字节码文件过程中经历了 4 个步骤,分别是词法分析、语法分析、语义分析以及生成字节码。1606747794010Oracle 的 JDK 软件包括两部分内容(对应上图):一部分是将 Java 源代码编译成 Java 虚拟机的指令集的编译器另一部分是用于实现 Java 虚拟机的运行时环境

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/320892.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号