热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

今天是Java诞生日,Java24岁了!

今天是Java诞生日,Java今年24岁了,比站长还年轻。。还有得搞,别慌!作为一名Java语言的学习者,对Jav

今天是 Java 诞生日,Java 今年 24 岁了,比站长还年轻。。还有得搞,别慌!作为一名Java语言的学习者,对Java的起源和发展有个大概的了解应是必要的。

 

给大家讲个有趣的小故事,JAVA名字的来源,有两种版本,其中一种可信度虽然不高,但仍有人声称是开发人员名字的组合:JamesGosling(詹姆斯·高斯林)ArthurVanHoff(阿瑟·凡·霍夫)AndyBechtolsheim(安迪·贝克托克姆),或“JustAnotherVagueAcronym”(只是另外一个含糊的缩写)。

还有一种比较可信的说法是这个名字是出于对咖啡的喜爱,所以以Java咖啡来命名。类文件的前四个字节如果用十六进制阅读的话,分别为CAFEBABE,就会拼出两个单词“CAFEBABE”(咖啡宝贝)。

注释:Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名。Java语言中的许多库类名称,多与咖啡有关:如JavaBeans(咖啡豆)、NetBeans(网络豆)以及ObjectBeans(对象豆)等等。

SUN和JAVA的标识也正是一杯正冒着热气的咖啡。所以由此来看第二种说法似乎更加可信。

1.Java的起源

20世纪90年代,硬件领域出现了单片式计算机系统,这种价格低廉的系统一出现就立即引起了自动控制领域人员的注意,因为使用它可以大幅度提升消费类电子产品(如电视机顶盒、面包烤箱、移动电话等)的智能化程度。为了抢占市场Sun公司在1991年成立了一个称为Green的项目小组,其目的是开拓消费类电子产品市场,例如,交互式电视、烤面包箱等。

Sun内部人员把这个项目称为“Stealth计划”后来改名为“Green”。由于C++的优势,考虑采用C++编写程序。但对于硬件资源极其匮乏的单片式系统来说,C++程序过于复杂和庞大,另外由于消费电子产品所采用的嵌入式处理器芯片的种类繁杂,如何让编写的程序跨平台运行也是个难题。最后,他们想要一种易于移植到各种设备上的平台。

在当时,比尔·乔伊提议SUN公司的工程师应该在C的基础上,开发一种面向对象的环境。最初,高斯林试图修改和扩展C的功能,他自己称这种新语言为C–,但是后来他放弃了。他将要创造出一种全新的语言,被他命名为“Oak”(橡树),以他的办公室外的树而命名。

至于这Oak怎么变成了Java?

因为商标搜索结果显示,Oak已被一家显卡制造商注册,因此团队找到了一个新名字即Java。

Java这个名字的由来也是曲曲折折的,接下来小编就正式为大家介绍Java的发展史。

 

1991年,Sun公司成立Green项目。Oak语言诞生。

 

1992年11月,Sun公司为Green项目成立FirstPerson公司。

 

1992年12月3日,被命名为Star7的面向一种类PDA的这台设备进行了展示,这种设备有鲜艳的图形界面和被称为“Duke”的智能代理来帮助用户。

 

1993年,FirstPerson公司重定位Oak。转向到网络应用领域(背景:WWW开始席卷全球)。

 

1994年6月,Oak技术包括源代码全部免费公开。Oak开发出小型万维网浏览器

WebRunner,后更名为Hotjava。Oak编写的Applet让网页由静态转成动态。

 

1995年,Oak注册登记时,发现该名已被占用,遂更名为Java。

 

1995年5月23日,Sun公司在Sun world会议上正式发布Java和HotJava浏览器。

 

1996年1月,Sun公司发布了Java的第一个开发工具包(JDK 1.0),这是Java发展历程中的重要里程碑,标志着Java成为一种独立的开发工具。

 

1996年9月,约8.3万个网页应用了Java技术来制作。

 

1996年10月,Sun公司发布了Java平台的第一个即时(JIT)编译器。

 

1997年2月,JDK1.1发布,在随后的3周时间里,达到了22万次的下载量。

 

1997年4月,JavaOne会议召开,参与者逾一万人,创当时全球同类会议规模之纪录。

 

1997年9月,JavaDeveloperConnection社区成员超过十万。

 

1998年2月,JDK1.1被下载超过2,000,000次。

 

1998年12月8日,JAVA2企业平台J2EE发布。

 

1999年4月27日,HotSpot虚拟机发布。HotSpot虚拟机发布时是作为JDK 1.2的附加程序提供的,后来它成为了JDK 1.3及之后所有版本的Sun JDK的默认虚拟机。

 

1999年6月,SUN公司发布Java的三个版本:标准版(JavaSE,以前是J2SE)、企业版(JavaEE以前是J2EE)和微型版(JavaME,以前是J2ME)。

 

2000年5月,JDK1.3,JDK1.4相继发布。

 

2001年6月5日,NOKIA宣布,到2003年将出售1亿部支持Java的手机。

 

2001年9月24日,J2EE1.3发布。

 

2002年2月26日,J2SE1.4发布,自此Java的计算能力有了大幅提升。

 

2004年9月30日,J2SE1.5发布,成为Java语言发展史上的又一里程碑。为了表示该版本的重要性,J2SE1.5更名为JavaSE5.0。

 

2005年6月,JavaOne大会召开,SUN公司公开JavaSE6。此时,Java的各种版本已经更名,以取消其中的数字”2″:J2EE更名为JavaEE,J2SE更名为JavaSE,J2ME更名为JavaME。

 

2006年11月13日,Java技术的发明者Sun公司宣布,将Java技术作为免费软件对外发布。Sun公司正式发布的有关Java平台标准版的第一批源代码,以及Java迷你版的可执行源代码。

 

2006年12月,SUN公司发布JRE6.0。

 

2007年3月起,全世界所有的开发人员均可对Java源代码进行修改 。

 

2009年4月,甲骨文74亿美元收购Sun。取得java的版权。

 

2011年7月28日,甲骨文发布java7.0的正式版。

 

2014年,甲骨文(O)公司发布了Java8正式版。

 

2017年,甲骨文发布Java9。

 

2018年3月,甲骨文发布Java10。

 

2018年9月,甲骨文发布Java11。

 

2019年3月,甲骨文发布Java12。

 

参考:www.sohu.com/a/194505161_775404

 


推荐阅读
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
  • 问题描述现在,不管开发一个多大的系统(至少我现在的部门是这样的),都会带一个日志功能;在实际开发过程中 ... [详细]
  • 本文探讨了如何在 Spring MVC 框架下,通过自定义注解和拦截器机制来实现细粒度的权限管理功能。 ... [详细]
  • 利用Node.js实现PSD文件的高效切图
    本文介绍了如何通过Node.js及其psd2json模块,快速实现PSD文件的自动化切图过程,以适应项目中频繁的界面更新需求。此方法不仅提高了工作效率,还简化了从设计稿到实际应用的转换流程。 ... [详细]
  • 长期从事ABAP开发工作的专业人士,在面对行业新趋势时,往往需要重新审视自己的发展方向。本文探讨了几位资深专家对ABAP未来走向的看法,以及开发者应如何调整技能以适应新的技术环境。 ... [详细]
  • 本文探讨了如何通过优化 DOM 操作来提升 JavaScript 的性能,包括使用 `createElement` 函数、动画元素、理解重绘事件及处理鼠标滚动事件等关键主题。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • 本文深入探讨了Go语言中的接口型函数,通过实例分析其灵活性和强大功能,帮助开发者更好地理解和运用这一特性。 ... [详细]
  • 入门指南:使用FastRPC技术连接Qualcomm Hexagon DSP
    本文旨在为初学者提供关于如何使用FastRPC技术连接Qualcomm Hexagon DSP的基础知识。FastRPC技术允许开发者在本地客户端实现远程调用,从而简化Hexagon DSP的开发和调试过程。 ... [详细]
  • ASP.NET 进度条实现详解
    本文介绍了如何在ASP.NET中使用HTML和JavaScript创建一个动态更新的进度条,并通过Default.aspx页面进行展示。 ... [详细]
  • 本文详细探讨了在Java TCP编程中,如何理解和测量并发连接数、请求数及并发用户数,并提供了实际应用中的测试方法和优化建议。 ... [详细]
  • 在尝试加载支持推送通知的iOS应用程序的Ad Hoc构建时,遇到了‘no valid aps-environment entitlement found for application’的错误提示。本文将探讨此错误的原因及多种可能的解决方案。 ... [详细]
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • CRZ.im:一款极简的网址缩短服务及其安装指南
    本文介绍了一款名为CRZ.im的极简网址缩短服务,该服务采用PHP和SQLite开发,体积小巧,约10KB。本文还提供了详细的安装步骤,包括环境配置、域名解析及Nginx伪静态设置。 ... [详细]
  • 从理想主义者的内心深处萌发的技术信仰,推动了云原生技术在全球范围内的快速发展。本文将带你深入了解阿里巴巴在开源领域的贡献与成就。 ... [详细]
author-avatar
辣手夏兰荇德_云
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有