2010-10-20 130 views
2

Java是语言,JRE是运行时环境,而JDK是开发工具? JLS的规范是说JRE必须执行x,y,z,并因此使Java成为它的内容。这些观点是否正确,如果没有,有人能够启发我吗?JLS,Java和相关技术之间的关系是什么?

有没有我们认为是Java的东西,但没有?我想我听说过关于Android的 - 是真的吗?

回答

3

在某种程度上,这是一个自然语言模糊的问题;这些东西中的一些在不同时间可能意味着不同的事物。

“Java”可以指代Java语言,就像“我用Java写了这个惊人的FooWidget”一样。它也可以是Java平台的缩写,包括语言,运行时,工具等,如“您需要Java才能使用此Web应用程序”。

JRE代表Java运行时环境,是捆绑的API,包含在Java Virtual Machine.的JDK,或Java Development Kit,是一套开发工具,包括Java编译器,调试器,编译器的javadoc,等等令人困惑的是,它还包括一个JRE(如Eclipse中所见,例如,可以将JDK指定为项目的运行时)。

Java语言规范(JLS)是这个Java语言的规范。换句话说,它描述了语言如何实现的技术细节。

Android是一个平台,代码使用Java编写,但编译后运行在Dalvik虚拟机而不是JVM上。从这个意义上讲,它实际上并不是Java,但从开发人员的角度来看,差别主要在于图书馆的使用;语法是相同的。

类似的问题:

相关问题