Java 和 C++ 都是高级程序语言, C++ 直接编译成机器码 运行,而Java 编译成class字节码后 读入到JVM中 通过JVM 这中间托管在转成机器码运行。 为什么Java需要这样做,这是基于什么考虑?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

Java 和 C++ 都是高级程序语言, C++ 直接编译成机器码 运行,而Java 编译成class字节码后 读入到JVM中 通过JVM 这中间托管在转成机器码运行。 为什么Java需要这样做,这是基于什么考虑?

李博 bluemind 2019-02-01 17:02:50 4091

Java 和 C++ 都是高级程序语言, C++ 直接编译成机器码 运行,而Java 编译成class字节码后 读入到JVM中 通过JVM 这中间托管在转成机器码运行。 为什么Java需要这样做,这是基于什么考虑?

Java C++
分享到
取消 提交回答
全部回答(10)
  • 双持
    2020-03-23 17:37:13

    移植性考虑

    0 0
  • 知钵
    2019-07-17 23:27:42

    write once, run everywhere.这个是java的核心,借助于抽象的与硬件无关的JVM层来解决代码跨平台的问题,实际上,JVM也是目前来看应用最广的VM(其他类似的VM还有erlang,但目前从使用的受众群体来说,不如JVM广泛)

    0 0
  • gaoyusong
    2019-07-17 23:27:42

    主要是解决跨平台问题

    0 0
  • 0v0
    2019-07-17 23:27:42

    java这么做是为了让写代码的人不要去考虑系统的环境,更专注的解决问题

    0 0
  • peter517517
    2019-07-17 23:27:42

    JVM的设计就让java一套代码可以在不同的平台运行,同时就是因为JVM,效率上比C++低

    0 0
滑动查看更多
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

推荐文章
相似问题
推荐课程