Java 发展简史:初生遇低谷,崛起于互联网( 三 )
最后项目小组决定:既不用C++编写 , 也不开发全新的编程语言 , 而是对C++进行改造:去除了C++复杂的指针和内存管理 , 并结合嵌入式系统的实时性要求 , 最终在1992年 , 他们开发了一种名为“Oak”的面向对象语言 。 科当他们在向硬件生产商进行演示的时候 , 硬件生产商对此并不感冒 , OaK语言因为缺乏硬件的支持而无法进入市场 , 从而被搁置一旁 。 1994年 , 项目小组看到了浏览器在未来的发展前景 , 于是决定将OaK应用于万维网 。 1995年 , 他们用OaK语言研发了一种能将小程序嵌入到网页中执行的技术——Applet , 由于Applet不仅能嵌入网页 , 还可随同网页在网络上进行传输 , 这让无数的程序员看到了OaK这门语言 , 与此同时 , OaK正式更名为Java 。 从此 , Java在互联网的推动下火了 。 Java的衍变 1996年1月 , SUN公司推出了JDK1.0 。 在JDK1.0发布后 , 有很多程序员学习并运用Java来制作网页 , JDK包括两大部分:开发工具和运行环境 。 运行环境包括核心API、集成API、用户界面API、发布技术、Java虚拟机(JVM) 。 JDK1.0的发布 , 标志着Java成为一种独立的开发工具 。 在同年9月 , 约有8.3万个网页应用了Java技术来制作 。 JDK1.0的代表性技术有:Java虚拟机、Applet、AWT等 。 1997年2月 , SUN公司紧接着推出了JDK 1.1 , 在推出后3周时间里 , 达到了近22万次的下载量 。 4月2日 , 首届Java One大会在美国旧金山召开 , 参加会议的人超过一万人 , 创造了当时全球同类会议规模最高的纪录 。 9月 , Java Developer Connection社区成员超过10万 , 同年还有10个最主要的操作系统供应商正式声明将在他们的产品中使用Java 。 JDK1.1的代表性技术有:JDBC、JavaBeans、RMI、JAR文件格式、Java语法中的内部类和反射 。 1998年12月8日 , JDK1.2——第二代Java平台的企业版J2EE发布 。 1999年6月 , Sun公司把Java体系分为三个方向: J2ME(Java2 Micro Edition , Java2平台的微型版) , 应用于移动、无线及有限资源的环境; J2SE(Java 2 Standard Edition , Java 2平台的标准版) , 应用于桌面环境; J2EE(Java 2Enterprise Edition , Java 2平台的企业版) , 应用于基于Java的应用服务器 。 随着供应商的不同 , Java的API也分为三大类: Java Core API:Java核心类库; Java Optional API:对之前API的扩充; 特殊API:由特殊厂商或组织提供的API 。 Java 2平台的发布 , 是Java发展过程中最重要的一个里程碑 , 标志着Java的应用开始普及 。 JKD1.2的代表性技术有:Swing、Java IDL、EJB、Java Plug-in等 , 在API文档中 , 添加了strictfp关键字和Collections集合类 。 1999年4月27日 , HotSpot虚拟机发布 。 HotSpot是由一家叫“Longview Technologies”的小公司开发的 , 后来被SUN公司收购 。 HotSpot虚拟机发布时是作为JDK 1.2的附加程序提供的 , 后来它成为了JDK 1.3及之后所有版本的Sun JDK的默认虚拟机 。 2000年5月 , JDK1.3、JDK1.4和J2SE1.3相继发布 , J2SE1.3是对J2SE1.2的补充和扩展 , 从应用领域的角度分析 , JavaSE1.3已经涵盖了数据库、WEB、网络、图形、多媒体、电话、影像等大部分的信息技术领域 。 2002年2月26日 , J2SE1.4发布 。 与J2SE1.3相比 , 多了近62%的类和接口 。 在这些新特性当中 , 还提供了广泛的XML支持、安全套接字(Socket)支持(通过SSL与TLS协议)、全新的I/OAPI、正则表达式、日志与断言 。 2004年9月30日 , J2SE1.5发布 , 成为Java语言发展史上的又一里程碑 。 为了表示该版本的重要性 , J2SE 1.5更名为Java SE 5.0(内部版本号1.5.0) 。 Java SE 5.0包含了从1996年发布1.0版本以来的最重大的更新 , 其中包括泛型支持、基本类型的自动装箱、改进的循环、枚举类型、格式化I/O及可变参数 。 2005年6月 , 在Java One大会上 , Sun公司发布了Java SE 6 。 此时 , Java的各种版本已经更名 , 已取消其中的数字2 , 如J2EE更名为JavaEE , J2SE更名为JavaSE , J2ME更名为JavaME 。 2011年7月28日 , 收购Sun公司的Oracle发布了 Java SE 7 , 引入了二进制整数、支持字符串的switch语句、棱形语法、多异常捕抓、自动关闭资源的try语言等新特性 。 2014年3月18日 , Oracle公司发布Java SE8 , 这次版本升级为Java带来了全新的Lambda表达式、流式编程等大量新特性 , 这些新特性使得Java变得更加强大 。 2017年9月22日 , Oracle公司发布Java SE 9 , 这次版本升级强化了Java的模块化系统 , 让Java语言更轻量化 , 且采用了更高效、更智能的GI 垃圾回收器 , 并在核心类库上进行大量更新 , 可进一步简化编程 。 2018 年 3 月 21 日 , Java SE 10发布 , Java 10 版本带来了很多新特性 , 其中最备受广大开发者关注的莫过于局部变量类型推断 。 此外 , 还包垃圾收集器改善、GC 改进、性能提升、线程管控等新特性 。 2018年9月26日 , Java SE 11 发布 。 这是 Java 大版本周期变化后的第一个长期支持版本(LTS版本持续支持到2026年9月) 。 Java11 带来了 ZGC、Http Client 等重要特性 , 一共包含 17 个 JEP(JDK Enhancement Proposals , JDK 增强提案) 。 2019年3月20日 , Java SE 12 发布 。 Java 12是短期支持版本 , 可在下一个版本发布之前获得Oracle的商业支持 。 2019年9月23日 , Java SE 13发布 , 此版本中添加了“文本块” , 文本块是一个多行字符串文字 , 避免对大多数转义序列的需要 , 以可预测的方式自动格式化字符串 , 并在需要时让开发人员控制格式 。 Java历经千辛万苦 , 换来春暖花开 经过二十多年的版本更新 , 一步步的积累 , 造就了如今的Java 。 一览Java在更新历程中所新增的特性: Java 1.0: 虚拟机——Sun Classic VM Java小应用程序——Applet Java图形设计——AWT Java 1.1: Jar包——Jar Java规范——JavaBeans 连接数据库——JDBC(Java DataBase Connectivity)远程调用——RMI 内部类——Inner Class 反射——Reflection Java 1.2:
推荐阅读
- 穿越火线|CF:传说武器再度上新,那王者、炫金该如何发展?
- 仙剑七|CF:角色加角色属性双向发展,这才是顶级角色的时代
- edg战队|6号英雄联盟S11总决赛,EDG夺冠率仅22%?谁夺冠对LOL的发展好?
- 文明|《帝国时代》系列发展史:给我几个农民,建造一个帝国
- 星界使徒|“传奇”IP移动游戏市场的发展前景
- 3d全明星|DNF:DNF趣味活动发展史,哪一个小游戏代表了你的美好记忆?
- 张大仙|张大仙转型成功,勤奋减肥只为在新的领域发展更好,大仙加油!
- 新三国|荣耀新三国:战将进阶小技巧,不一定金色武将最好,需要均衡发展
- 蔡国强|网游未来发展方向在哪?两种道路,究竟谁能称霸游戏市场?
- |3D区女神蒂法的同人图,往奇怪的方向发展,西尾维新表示很赞!