Java是语言,JRE是运行环境,JDK是开发工具?JLS 是说明 JRE 必须执行 x,y,z 的规范,因此使 Java 成为它的样子?这些观点是否正确,如果不是,有人可以启发我吗?
有没有我们认为是 Java 但不是的东西?我想我听说过 Android —— 是真的吗?
这在某种程度上是自然语言的歧义问题;其中一些事情在不同的时间可能意味着不同的事情。
“Java”可以指 Java 语言,如“我用 Java 编写了这个惊人的 FooWidget”。它也可以是 Java 平台的简写,包括语言、运行时、工具等,如“您需要 Java 才能使用此 Web 应用程序”。
JRE 代表 Java 运行时环境,是Java 虚拟机中包含的捆绑 API 集。JDK 或Java Development Kit是一组开发人员工具,包括 Java 编译器、调试器、javadoc 编译器等。令人困惑的是,它还包括一个 JRE(如在 Eclipse 中看到的,例如,JDK 可以指定为项目的运行时)。
Java 语言规范 (JLS) 是,嗯,Java 语言的规范。换句话说,它描述了如何实现语言的技术细节。
Android 是一个平台,其中代码是用 Java 编写的,但编译后运行在 Dalvik 虚拟机而不是 JVM 上。从这个意义上说,它实际上并不是 Java,但从开发人员的角度来看,区别主要在于库的使用;语法是一样的。
类似的问题: