java用什么开发出来的?

2024-11-27 12:42:41
推荐回答(4个)
回答(1):

Java产生的历史
Java来 自于Sun公 司 的 一 个 叫Green的 项 目, 其 原 先 的 目 的 是 为 家 用 消费 电 子 产 品 开 发 一 个 分 布 式 代 码 系 统, 这 样 我 们 可 以 把E-mail发给 电 冰 箱、 电 视 机 等 家 用 电 器, 对 它 们 进 行 控 制, 和 它 们进 行 信 息 交 流。 开 始, 准 备 采 用C++,但C++太 复 杂, 安 全 性 差,最 后 基 于C++开 发 一 种 新 的 语 言Oak(Java的 前 身),Oak是 一 种 用于 网 络 的 精 巧 而 安 全 的 语 言,Sun公 司 曾 依 此 投 标 一 个 交 互式 电 视 项 目, 但 结 果 是 被SGI打 败。 可 怜 的Oak几 乎 无 家 可 归,恰 巧 这 时Mark Ardreesen开 发 的Mosaic和Netscape启 发 了Oak项 目 组 成员, 他 们 用Java编 制 了HotJava浏 览 器, 得 到 了Sun公 司 首 席 执 行官Scott McNealy的 支 持, 触 发 了Java进 军Internet。 Java的 取 名 也 有一?copy;趣 闻, 有 一 天, 几 位Java成 员 组 的 会 员 正 在 讨 论 给 这个 新 的 语 言 取 什 么 名 字, 当 时 他 们 正 在 咖 啡 馆 喝 着Java(爪哇) 咖 啡, 有 一 个 人 灵 机 一 动 说 就 叫Java怎 样, 得 到 了 其 他人 的 赞 赏, 于 是,Java这 个 名 字 就 这 样 传 开 了。

java使用的jdk,运行的环境jre,java虚拟机全都是用java语言写的

这里的编程语言,实际上都不能说是什么做出来或开发出来的,因为编程语言实际上是一种规范,一种协议。你(编程者)遵守这种规则(语法)来写出代码(实际上是符合语法规则的文本),然后该语言的编译器才可以分析你的代码,分析语义并最终转换成CPU可以执行的单条指令序列。

就像英语,不过是26个字母的组合,但是有了词法,语法,规定了某些特定组合表示特定的意思,而除此之外的组合是没有意义的,于是就形成语言。其实你完全可以另外按照自己的想法制定一套规定,还是用那26个字母,然后起名叫 英++,于是一门新的语言诞生了,呵呵。你自己的那一套规定就叫做语法,别人必须按照你的规定才能理解你的语言。在让别人理解之前你必须先解释给他听,也就是翻译成别人懂的语言,假设别人懂的语言就是机器语言,而你在解释给他的时候你所扮演的角色就相当于编译器了

C语言,C++,java也是如此,他们都是有那些几乎一样的特定的字母,符号组成的,但是语法不同而已(由相应的编译器来解释翻译成机器码等)

至于你提的问题,我猜测你可能是想知道这些语言的集成开发环境或者编译器是怎么开发出来的。对于这个问题,我也不清楚细节,每个公司(比如MS、BORLAND)自己的IDE只有自己才知道是什么语言写的,很可能一个IDE要有多种语言开发不同的构件,然后集成在一起。因为不同语言有不同语言的好处,因此一个大软件用多种语言开发不足为奇。

这里我要说的是,一个语言的编译器可以用任何语言来编写实现(如果用C写C的编译器,不是不可能,但是不可能的是用C语言写第一个C的编译器,也就是说C语言刚从贝尔实验室开发出来的时候,它的编译器很可能是汇编语言写就的)。
汇编语言的编译器呢?汇编其实就是机器指令的一种助记符,因此运行没问题的。
机器语言,它就不用编译器了,它是由硬件支持的,都是电路实现的。
因此,最早的语言,它的编译器的开发难度非常大,因为人要干一些不是人干的活(机器才适合做呢),而现在的语言,尤其是高级语言,实现难度也不低,虽然支持环境强了(软件,硬件,现有语言等等),但是高级语言的逻辑实现需要更强的编译器,解释器来支持,因此开发这些东西需要的人力物力也是相当大的

回答(2):

Java是一种编程语言,一般用它去开发其他的东西.如果你问的是它的低层实现,应该是C.

回答(3):

基本上应该是纯java的开发工具,但是在for windows的版本中有部分dll。
开始是用C++,但越开发,好像是问题越多,在blake stone的建议下,改用纯java
汇编是用机器码开发出来的。
然后简单点的汇编实现复杂的汇编编译器。
最初的高级语言编译器,是用汇编来写的。
然后再用简单的高级语言编译器一点点完善自己。
不过还是有高手用汇编做高级语言编译器。
所以不能确定编译器是用什么写出来的,只能去问那些产编译器的厂家。
例如VC,可能只有微软才知道它是用什么写的。
TC就要问borland公司去了。

回答(4):

jvm是采用c和汇编写的,并不是java