JDK,JRE,Java:版本混淆!


问题内容

尽管我还不是真正的Java开发人员,但我现在应该知道这一点,但是我仍然很困惑。我的问题分为两部分:

  1. 所谓的(如我所见) “ Sun JDK”,OpenJDK和GCJ有 什么区别?

  2. 在不同的时间,我看到了下面的每一个,使您很难理解哪个版本号实际适用于什么。有人可以帮我解决这个问题吗?

    • Java 6
    • Java 1.6
    • JDK 6
    • JDK 1.6
    • JRE 1.6
    • JVM 11.0

注意:我确实了解JDK(Java开发工具包)和Java运行时环境之间的区别。尽管我知道JVM是/确实是什么,但我对JRE和JVM之间的区别尚不完全清楚。


问题答案:
  1. Sun JDK由Sun制造,OpenJDK是竞争性的开源实现。GCJ是GNU Java编译器。
  2. Java 6 = Java 1.6和JDK 6 = JDK 1.6

详细信息1 http://en.wikipedia.org/wiki/OpenJDK

-反之亦然

http://en.wikipedia.org/wiki/GNU_Compiler_for_Java

GCJ与Sun JDK /
OpenJDK有什么关系?我知道没有直接关系。GCJ是一个单独的项目。使用一个JDK取代另一个JDK有什么好处?如果重新分发Sun
JDK,可能会出现许可问题。我个人对Sun JDK更加信任,因为它具有稳定性。OpenJDK不是Sun项目吗?是的,没有。这是一个社区项目。