Java 的历史

原文: https://javabeginnerstutorial.com/core-java-tutorial/history-of-java/

Java 是一种通用的通用计算机编程语言,它是基于环境的,基于类的,面向对象的,并且经过专门设计以尽可能减少应用依赖项。 Java 最初是为交互式电视开发的,但是对于当时的数字有线电视行业来说,它是太先进的技术。 建议让应用开发人员“编写一次,就可以在任何地方运行”,这表明已编译的 Java 代码可以在纵容 Java 的所有平台上运行,而无需重新编译。 Java 应用被编译为可以在任何 Java 虚拟机(JVM)上运行的字节码,而与计算机的架构无关。

Java 包罗万象,但事实并非如此。 它毫不费力地开始。 这一切始于 1990 年,当时 Sun Microsystems 工程师 Patrick Naughton 对 Sun 的 C++ 和 C API 的情况更加恼火,并有机会作为 The Stealth Project 的一部分来创建替代语言。

Stealth Project 很快变成了 Green Project,Mike Sheridan 和 James Gosling 进入了行列,该小组开始开发用于对下一代智能设备进行编程的新技术。

编译后的代码对其他处理器毫无用处,因此必须重新编译。 因此 5 人的合作伙伴也被称为“绿色团队”,开始致力于产生一种可访问且具有成本效益的解决方案。 他们工作了 18 个月来建立一种灵活的,与平台无关的语言,该语言可以创建可以在不同环境下的各种处理器上运行的代码。 上面的必要性导致 Java 的创建。

Java 开发

Java 编程语言是由 James Gosling,Patrick Naughton,Chris Warth,Mike Sheridan 和 Ed Frank 的 5 位杰出人士开发的,但是 James Gosling 被认为是发明者,因为他完成了 Java 的原始设计并实现了 Java 的原始编译器, 虚拟机。 他们全都为 Sun Microsystems,Inc. 经营,并于 1991 年开发。该语言用了 18 个月的时间完成,并最初的名称为“Oak”,由于版权问题,该名称于 1995 年重命名为 Java。

合作伙伴聚集在一起,决定一个新名称。 建议的单词是“动态的”,“革命的”,“丝绸的”,“摇晃的”,“DNA”等。他们想要揭示技术真实性的东西:革命性的,动态的,活泼的,酷的,独特的且易于拼写的,乐于讲述的。

根据 James Gosling 的说法,“Java 是 Silk 的首选之一”。 最多的团队成员首选 Java,因为名称是唯一的。

Java 版本

自 JDK 1.0 以来,Java 语言经历了各种修改,并且将许多类和单元包含到标准库中。 从 J2SE 1.4 开始,Java 语言的开发已经由 Java Community Process(JCP)监督,该社区利用 Java Specification Requests(JSR)提出和指定对 Java 程序的扩展和修改。 该语言由 Java 语言规范(JLS)规定; 根据 JSR 901 对 JLS 进行更改。

除了语言的变化之外,Java 类库还进行了许多令人激动的更改,从 JDK 1.0 中的几百个类增加到 J2SE 5 中的三千多个。全新的 API,例如 Swing 和 Java2D 已提出,并且反对了许多原始的 JDK 1.0 类和实践。 某些程序允许将 Java 程序从 Java 平台的一种版本转换为旧版本(例如,将 Java 5.0 反向移植到 1.4)。

2017 年 9 月,Java 平台首席设计师 Mark Reinhold 的目标是将发布系列更改为“每六个月发布一次特色发布”,而不是当前的两年时间表,此计划随后生效。

Java 8 是当前支持的长期支持(LTS)版本,而 Java 10 是目前认可的加速发布版本,截至 3 月 20 日, 2018 年。Java10 支持终止于与 Java 11 支持开始的同一天(计划于 2018 年 9 月开始),Java 11 将成为 Java 8 之后的下一个 LTS。不再公开支持 Java 7,Java 9 自 Java 以来​​已停止接受更新。 9 是一个短期快速发布版本,已被 Java 10 取代,并且 Java 8 的“公共更新结束”预计将于 2019 年 1 月用于商业用途,而不早于 2020 年 12 月用于非商业用途。

已发布的几个 Java 版本,它们是

  • JDK Alpha 和 Beta(1995)
  • JDK 1.0(1996 年 1 月 23 日)
  • JDK 1.1(1997 年 2 月 19 日)
  • J2SE 1.2(1998 年 12 月 8 日)
  • J2SE 1.3(2000 年 5 月 8 日)
  • J2SE 1.4(2002 年 2 月 6 日)
  • J2SE 5.0(2004 年 9 月 30 日)
  • Java SE 6(2006 年 12 月 11 日)
  • Java SE 7(2011 年 7 月 28 日)
  • Java SE 8(2014 年 3 月 18 日)
  • Java SE 9(2017 年 9 月 21 日)
  • Java SE 10(2018 年 3 月 20 日)