java多了一个除法和判断语句,程序慢很多是什么原因

java多了一个除法和判断语句,程序慢很多是什么原因,第1张

Java为了可移植性,没有绑定某个目标平台的寄存器,而是采用基于栈的指令集。频繁的栈内存访问会导致比较慢的速度,并且通常编译相同语句产生的指令.JAVA 代码的问题,因为这些代码都很简单,很普通。也不是数据库的问题。更不是网络的问题,因为就是那段普通 JAVA 代码运行了 9 秒。2 、既然不是 JAVA 代码和数据库、网络的问题,那么有可能是 JVM 的问题或者服务器的 CPU 或者 IO 的问题。现在我就是要找代码慢的那个时刻的 JVM 的概况和当时服务器 CPU 或者 IO 的概况。我想在代码中把 JVM 当时的堆栈内存情况打印出来。还有把当时服务器的

原因在于java是运行在jm虚拟机里面,属于解析语言,所以java启动速度和运行速度都非常慢。

java的唯一优点就是开发比较方便,开发界面程序一般用c++或c#或其它,很少人用java的,java那个运行效率真的太垃圾了,内存回收机制垃圾,程序响应慢,体积大就是java的最大缺点。

首先,java字节码的执行是通过jvm(java虚拟机)来执行的,而jvm基本上是用c语言实现的。这就相当于多了一个中间层,用c、c++编写的程序执行是(可执行文件--->机器),而用java编写的程序执行是(字节码--->jvm--->机器)。另外,jvm本身的一些机制如垃圾回收,类的查找与加载等也是有时间消耗。\x0d\x0a不过任何事情都是有两面性,java可能比c、c++慢,但是这个平台为我们屏蔽了很多机器和 *** 作系统的差异性,我们编写java代码基本不用太多考虑机器和 *** 作系统本身的东西。并且有很好的可移植性。比如你在Windows下写的java代码,基本上只需要做很少的修改就可以在Linux下运行了。\x0d\x0a最后说点题外话,那些说java可以比c、c++快的人应该都是java的死忠,我相信实现同样的功能有高手可以用java写的程序比很多人用c、c++写的程序要快,但是和同样水平的c、c++程序比,那么在程序性能上还是不会有优势的。而那些开口闭口就说java慢的像蜗牛的人估计也没有写过几行java代码,实现同样功能他用c、c++写的也未必有别人用java写的程序跑的快。\x0d\x0a所以,没有太多的必要比较语言的快慢,重要的是语言他适合用来做什么,存在的既是合理的,一种语言既然存在那么必然有他适用的地方,不然你可能没有听说过这门语言。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12062777.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-20
下一篇2023-05-20

发表评论

登录后才能评论

评论列表(0条)

    保存