我将学习java 7并做了一些研究,但似乎没有清楚地回答这些问题,如果你能回答这些问题或者帮我一点,我将不胜感激:
如果我错了,请告诉我。 谢谢,杰克
答案 0 :(得分:70)
是的,这可能令人困惑。
你没有要求它,但我会从这里开始。 JVM是Java虚拟机。它是一个程序,可以读取已编译的Java代码(.class文件和.jar文件,它们只是包含一堆打包在一起的.class文件的.zip文件)并执行它。有许多JVM,例如你需要一个用于Windows的JVM,一个用于Linux,一个用于OSX等。但是还有许多替代JVM,用于嵌入式设备的JVM等(许多人不同意并且说JVM只有一个,并且它是一个规范。但是,通常系统管理员会说“JVM”来表示服务器上运行的实际二进制文件。)
你也没有要求以下。 JRE是Java运行时环境。它包括运行 Java应用程序所需的一切,即JVM本身,标准库和一堆其他文件。标准库本身非常重要,因为它包含了许多在开发Java应用程序时使用的有用的东西。它包含java。*包中的所有内容以及com.sun,com.oracle包中的一些私有内容。
不同版本的Java(1.0,1.1等一直到1.7,也称为Java 7)通常包含对JVM和标准库的改进,因此这两者通常需要一起运行,并且打包在JRE中一起。
如果您在计算机上运行任何Java程序,则安装了JRE。
JDK是Java Development Kit。它包含JRE以及开发 Java应用程序的许多其他有用的东西。这显然包括编译器(由于某些原因也包含在JRE中,但你现在可以忽略这个事实),用于创建.jar文件的JAR实用程序,用于“反编译”类文件的许多工具,检查.jar文件,重新包装他们等等。
它通常还包含标准库的文档以及标准库的所有源代码,因为它们对于开发人员的读取和检查非常有用。如果您想认真开发Java应用程序,则需要JDK。
在谈论JavaSE,JavaEE,JavaME等时,所谓的“版本”。基本上,由于Java生态系统非常庞大,Sun决定以不同的版本提供Java:
关于编号,他们搞砸了很多。实际上,在Java 1.4之后,他们创建了JCP,让社区参与Java本身的开发,并从Java 1.5开始,它正式命名为“Java 5”,尽管业界大多数人称之为1.5。此外,Java 1.2是Java 2,但我认识的每个人都不是working in Sun at that time always called it 1.2。
答案 1 :(得分:14)
Java 7只是Java SE 7吗? Java 6是Java SE 6吗?
是
有几个Java“版本”,即Java SE,“标准版”,Java EE,“企业版”和Java ME,“微版”。
“Java N”,其中N是某个数字指的是SE。 Java EE有单独的版本号,现在最高版本为6。 Java ME也有自己的版本 - 目前版本为3. Java ME适用于移动和小型设备。
Java EE是一组库和接口,例如构建在Java SE之上的EJB,JMS,JNDI,Servlets / JSP。
Java SE 7还是Java JDK 7吗?什么是JDK?
JDK = Java开发工具包。下载Java时,您可以获得JRE(Java运行时环境),它只允许您运行已编译的Java应用程序,或者您可以获得允许您编译和运行Java应用程序的JDK。 Java SE 7引用了JDK和JRE。
这是否意味着java JDK与java编号(Java SE 7)相同?
是
什么是java 1.5和1.6?以及它如何对应于java编号(Java SE ...)?
Sun的Java编号在中游发生了变化,有点令人困惑。他们从1.0到1.1然后是1.2。然后他们决定调用1.2“Java 2”,该标签一直持续到Java 1.4。然后Java 5被称为1.5和5.0,并且还在继续 - Java 7也是Java 1.7,Java 6也是Java 1.6等。
Java的SDK是否与JDK相同?
是
答案 2 :(得分:2)
答案1:SE代表标准版。现在大多数情况下,每个JRE都在标准版中,所以你可以将Java 7和Java SE 7作为同样的东西。
答案2:JDK代表Java Development Toolkit。 Java SE是一种技术,JDK是用于开发该技术的工具集。
答案3:技术上是的。实际上,你最有可能看到“JDK 1.6”和“Java 6”,“JDK 1.7”以及“Java 7”等等。
答案4:与3相同,我想。
答案5:Java的软件开发工具包等同于Java的开发工具包,所以是的。
此图表可能有所帮助:
http://www.oracle.com/technetwork/java/javase/tech/index.html
答案 3 :(得分:1)
SE =标准版,java的标准版,通常只命名为java X.另一个版本是EE,更面向组件。
JDK = java开发工具包,这是你用来开发java app的sdk的一个子集,是一个框架。
1.7的版本号被命名为java 7.你可以获得这个版本的SE版本或SDK。
无论如何,您可以在维基百科上找到所有信息