Inside into jvm

Java programs can run slower than an equivalent C++ program for many reasons:

Interpreting bytecodes is 10 to 30 times slower than native execution.
Just-in-time compiling bytecodes can be 7 to 10 times faster than interpreting, but still not quite as fast as native execution.
Java programs are dynamically linked.
The Java Virtual Machine may have to wait for class files to download across a network.
Array bounds are checked on each array access.
All objects are created on the heap (no objects are created on the stack).
All uses of object references are checked at run-time for null.
All reference casts are checked at run-time for type safety.
The garbage collector is likely less efficient (though often more effective) at managing the heap than you could be if you managed it directly as in C++.
Primitive types in Java are the same on every platform, rather than adjusting to the most efficient size on each platform as in C++.
Strings in Java are always UNICODE. When you really need to manipulate just an ASCII string, a Java program will be slightly less efficient than an equivalent C++ program.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值