【发布时间】:2019-06-26 13:09:54
【问题描述】:
我想问,java是用什么写的,但是我在stackexchange上找到了一个答案,上面说,你不用一种语言来写语言,它是一个规范,但是JDK是用什么写的C。
现在,我的问题是,如果 JDK 是用 C 编写的,那么 Java 是否基本上是 C 语言的一种不同形式,比如扩展或其他东西,添加了更多功能?这个规范是如何创建的,这三件事之间是什么关系:
- 解释规范的工具(如JDK)
- 规范本身
- 创建该工具的语言。
【问题讨论】:
-
不,将 JDK 视为任何其他程序。你可以用许多不同的语言编写它。现在你甚至可以用带子掀起靴子,用 Java 重新制作 JDK。
-
可以用任何能够实现 JDK 规范的语言编写 JDK。 C 完全不是一个糟糕的选择。
-
@Bathsheba - 虽然用 C++ 编写的 JVM 有点讽刺
-
我不明白这里的所有反对意见。当然,这个问题有点幼稚,但这是一个有趣的问题。
-
你也可以问,如何用 C 语言编写国际象棋游戏,因为 C 语言对游戏规则一无所知。
标签: java c compiler-construction