首页 > 后端开发 > Python教程 > 为什么Java虚拟机比Python虚拟机大那么多?

为什么Java虚拟机比Python虚拟机大那么多?

WBOY
发布: 2016-06-06 16:24:05
原创
2245 人浏览过

好吧..题主我不是学计算机的,只是装过JVM和PVM而已。。
java大小:为什么Java虚拟机比Python虚拟机大那么多?python大小:为什么Java虚拟机比Python虚拟机大那么多?=============
感谢好心人添加了截图
以及python安装包还包含了IDLE和一些标准库吧,所以解释器应该更小。
但是我也不知道PVM到底有多大。

回复内容:

Python的虚拟机是个单纯的解释器 java的在解释的同时会profile然后根据profile的结果对特定代码进行实时编译 功能多了大小自然多了 jvm有google,以前sun、oralce、ibm、以前bea,还又很多其他公司,加上国内算ali。这么多资源在参与研究和开发jvm,应该是python比不了的。 谢邀

Python虚拟机/解释器和Hotspot这些JVM比起来就是玩具。况且光是比虚拟机/解释器肯定没有多少差别,你说的多半是把运行库都算上的整个运行环境 库占很大 python到现在都二三十年了,比java还早。java从第一版到现在经过了无数的革新,python却还有GIL。一看就知道,一个是玩具,一个是能干活的,大小怎能一样。 因为 Java 代码比 Python 代码长很多嘛。 人生苦短,我用Python,我觉得挺好 回上边的,只能说,玩具简直太好玩了,工具难用的一笔
好了,玩笑结束,上边有人提到库移植性问题,怎么说呢, 首先python是个胶水语言,所以库也就是被胶水粘一块的代码块(很多是C写的然后包装,这也是pvm很慢,但Python感觉蛮快的原因吧)一般Linux就是一个so加一个.py包装一下,显然是不能直接跨平台,java本身就是为了跨平台做的,所以大部分库都是跑在JVM上,所以能直接跑.因为java的库也是解释执行的字节码,所以比较废内存,也感觉慢一点(毕竟有转换或者jit的过程)。而Python的模式是一堆native代码加一点脚本,只有脚本是需要解释的,虽然pvm慢很多,但几乎感觉不到这个速度劣势的存在。 讲个笑话:Python 3. java虚拟机能跑java1 2 3 4 5 6 7 8的代码,python3能跑2的代码吗?
相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板