栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

半编译半解释的Java语言和C++、Python等语言的区别

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

半编译半解释的Java语言和C++、Python等语言的区别

1. 引言

        我们编写的代码需要按照某些组织制定的规范,对于程序员来说,能够轻松理解;但是对于计算机来说,它们根本无法理解我们编写的代码,只能识别二进制指令。

2. 编译型语言(如C++)和解释型语言(如Python)

编译型语言:源代码直接被编译为可执行文件(二进制指令),在后续直接运行可执行文件,效率较高;

解释型语言:边执行源代码边转换为二进制指令,每一次都需要重新解释执行,效率较低。

3. 可执行文件为什么不能跨平台

        首先,这里的平台其实是指操作系统。那么可执行文件为什么不能跨操作系统呢?有些人会回答是由于不同的操作系统具有不同的二进制指令。但其实只有计算机的架构不同(如x86、ARM),才存在指令不同。实际上,不同操作系统的可执行文件有不同的格式,Windows是PE格式,而Linux是ELF格式。

        其次,不同的操作系统在文件操作、资源分配、任务调度上存在着不同。

4. 解释型语言为什么能跨平台

        源代码在不同的平台上有不同的解释器进行解释、运行,因此解释型语言可以跨平台。注意:虽然解释型语言是边执行边解释,但仍然要整体进行语法、语义检查后再一行一行解释执行。

5. 半编译半解释的Java语言

        java源代码先经过编译,得到 .class为后缀的字节码文件,然后该字节码文件可以跨平台。因为不同平台有不同的Java虚拟机(Java Virtual Machine, JVM),JVM可以解析、执行字节码文件。所以有着“一次编译,到处运行”的口号。

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

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

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