36

I'm taking a computer science course and the syllabus says download java 1.6. I don't find a java 1.6, everything says JDK 6. When I googled java 1.6 I found this link:

http://java.sun.com/javase/downloads/index.jsp

Is this what he's refering to as java 1.6? I downloaded JDK 6 update 17 and netbeans 6.8. I'll email the instructor and ask him this question, but I bet I'll get quicker answer here and I'm ready to get started! Thanks!

update: Thanks for the quick answers everyone! I'm rolling along now!

cchampion
  • 7,607
  • 11
  • 41
  • 51
  • 1
    http://en.wikipedia.org/wiki/Java_version_history#Java_SE_6_.28December_11.2C_2006.29 – Michael Myers Jan 12 '10 at 22:53
  • possible duplicate of [Java SE 6 vs. JRE 1.6 vs. JDK 1.6 - What do these mean?](http://stackoverflow.com/questions/250517/java-se-6-vs-jre-1-6-vs-jdk-1-6-what-do-these-mean) – Jon Oct 24 '11 at 14:47
  • How many ages hence... Can I cross-post? I'll just cross-link for now. Check out my answer here, it fills in many details: http://stackoverflow.com/questions/250517/java-se-6-vs-jre-1-6-vs-jdk-1-6-what-do-these-mean/7247851#7247851 – Xonatron Oct 24 '11 at 14:06

4 Answers4

44

No, but yes.

JDK means Java Development Kit 6.

It's an implementation of the Java SE 6 platform as specified by JSR 270 together with a set of development tools (the implementation of the platform without the development tools is called the JRE: Java Runtime Environment).

For some reason the internal version number of the JDK 6 is "1.6" (or 1.6.0_17 for example). But that's only the internal version number of that piece of software. The Java platform itself is simple "Java SE 6" (no "1." anywhere to see).

So to re-iterate:

  • "Java 6" usually means "Java SE 6"
  • "Java SE 6" is the "Java Standard Edition 6 platform", which is a specification of what the platform looks like
  • "JDK 6" is the "Java Development Kit 6", which is a development kit for Java SE 6
  • The internal version number of the software components that make up JDK 6 is "1.6.x"
  • "JDK 1.6" doesn't exist, strictly speaking, but is usually written to refer to JDK 6
  • "Java 1.6" doesn't exist, strictly speaking, but is usually written to refer to Java SE 6

So if you're told to install "Java 1.6" for a software development course, then the JDK 6 is definitely the correct piece of software to install.

Update: yes, all of the above is still correct after Oracle bought Sun and Java 7 (specified in JSR 336) was released. Java 7 still uses "1.7.0" as the internal version number.

Joachim Sauer
  • 302,674
  • 57
  • 556
  • 614
  • 1
    @Mehrdad: granted, they did have brighter moments. On a positive note: now they seem to at least be consistent with the new scheme. – Joachim Sauer Jan 12 '10 at 23:39
  • To be fair, Sun's version numbering has nothing on Emacs: version 23.2 and counting! (They skipped versions 2-12. According to the XEmacs website, at least.) – Nate C-K Feb 24 '11 at 15:36
16

Yes, they're the same. See this page for a more detailed explanation of the version numbering.

Joachim Sauer
  • 302,674
  • 57
  • 556
  • 614
Jared Russell
  • 10,804
  • 6
  • 30
  • 31
2

Yes, Sun makes use of dual naming convention for the same thing. One naming convention if for the product and one is for the developer. The official documentation mentions:

Both version numbers (1.6.0 and 6) are used to identify this release of the Java Platform. Version 6 is the product version, while 1.6.0 is the developer version. The number 6 is used to reflect the evolving level of maturity, stability, scalability and security of Java SE.

See J2EE or JEE, Java 5 or Java 1.5 - Is SUN Crazy? for more on this madness.

Madness...? This is Sun!

Pascal Thivent
  • 562,542
  • 136
  • 1,062
  • 1,124
1

They are the same. Here is Sun's discussion of that and other naming discrepancies.

Michael Brewer-Davis
  • 14,018
  • 5
  • 37
  • 49