为什么我现在看到的JAVA软件并没有那么快?

都说JAVA可以比C更快,但为什么我看到的JAVA写的软件都没有别人说的那么快。优其是手机上的JAVA软件有时更是慢的要命。这是为什么。听说JAVA可以即时编译成本地代码,真的可以这样?那是不是真的就很快了?

JAVA的运行速度一般比C或者C++要慢一点。C或者C++被编译后,形成的二进制文件是与特定的操作系统和硬件平台相关的。但java为了平台的无关性,编译后生成的是.class文件,这是在JAVA虚拟机内执行的二进制文件,JAVA虚拟机运行在特定的平台上。这样应该可以理解为什么JAVA的运行速度比C或C++慢一点了。不过随着JAVA虚拟机技术的发展,其速度之间的差距应该会越来越小。这是我的一点理解,应该还有其他的原因。