1991年,sun公司为抢占市场,成立由詹姆斯·高斯林(James Gosling)领导的“Greek”项目小组,为开发一种在各种消费电子产品上运行的程序结构,历经三年的努力,在C++基础上,开发一种名为“Oak”的面向对象语言。
1994年,应用于互联网。
1995年,因研发了applet技术——将小程序嵌入到网页并可随同网页进行网络传输,推动了Oak的传播。在申请时,因改名已被注册,正式更名为Java。当时在咖啡馆讨论,设计了咖啡图标。
1996年,JDK1.0,包括开发工具和运行环境。运行环境包括核心API、集成API、用户界面API、发布技术、Java虚拟机(JVM)。代表性技术:JVM、Applet、AWT。
1997年2月,JDK1.1,代表性技术:JDBC、JavaBeans、RMI、JAR文件格式、Java语法中的内部类和反射。
1998年12月8日,JDK1.2——第二代Java平台的企业版J2EE发布。代表性技术:Swing、Java IDL、EJB、Java Plug-in。
1999年6月,Java体系划分三个方向:
J2ME(微型版),应用于移动、无线及有限资源的环境;
J2SE(标准版),应用于桌面环境;
J2EE(企业版),应用于基于Java的应用服务器;
Java2平台的发布,是Java发展史的一个里程碑,标志Java的应用开始普及。
Java AP也分三大类:
Java Core API :Java核心类库;
Java Optional API:对之前的API进行扩充;
特殊API:有特殊厂商或组织提供的API;
2000年5月,JDK1.3、JDK1.4和J2SE1.3相继发布。
2002年2月26日,J2SE1.4。
2004年9月30日,J2SE1.5。更名为Java SE5.0。Java发展史又一里程碑。
2005年6月,Java SE6。
2011年7月28日,Oracle收购Sun公司,发布Java SE7。
2014年3月18日,Java SE8。(长期稳定版)
2017年9月22日,Java SE9。
2018年3月21日,Java SE10。
2018年9月21日,Java SE11。(长期稳定版)
2019年3月20日,Java SE12。
2019年9月23日,Java SE13。
JavaSE:JavaPlatform,StandardEdition
标准版:各应用平台的基础,桌面开发和低端商务应用的解决方案。
JavaEE:JavaPlatform,EnterpriseEdition
企业版:以企业为环境而开发应用程序的解决方案
JavaME:JavaPlatform,MicroEdition
微型版:致力于消费产品和嵌入式设备的最佳解决方案
纯面向对象
跨平台(它提供了在不同平台下运行的解释环境)
健壮,吸收了C/C++语言的优点。
有较高的安全性。(自动回收垃圾,强制类型检查,取消指针)
JVM可以理解位一个运行Java字节码的虚拟计算机系统
系统跟踪存储空间的分配情况。在JVM空闲时,检查并释放可以被释放的存储空间。
GC在Java程序运行过程中自动启用,程序员无法控制与干预。
JDK(JavaDevelopmentKits)–Java开发工具集
JRE的三项主要功能:
加载代码:由类加载器(classloader)完成;
校验代码:由字节码校验器(bytecodeverifier)完成;
执行代码:由运行时解释器(runtimeinterpreter)完成。
加载代码:由类加载器(classloader)完成;
校验代码:由字节码校验器(bytecodeverifier)完成;
执行代码:由运行时解释器(runtimeinterpreter)完成。