您的位置:首页 > 编程语言 > Java开发

Java语言简史和Java程序运行机制

2012-11-06 10:13 330 查看
Java语言简史

1996年,Sun公司发布了JDK 1.0。这个版本包括两部分:运行环境(即JRE)和开发环境(即JDK)。运行环境包括核心API、集成API、用户界面API、发布技术、Java虚拟机(JVM)五个部分;开发环境包括编译Java程序的编译器(即javac命令)。

1997年2月18日,Sun发布了JDK 1.1。 JDK 1.1增加了JIT(即时编译)编译器。JIT和传统编译器不同,传统编译器是编译一条,运行完后将其扔掉;而JIT会将经常用到的指令保存在内存中,当下次调用时就不需要重新编译了,通过这种方式让JDK在效率上有了很大的提升。

1998年12月,Sun发布了Java历史上最重要的JDK版本: JDK 1.2,伴随JDK 1.2一同发布的还有JSP/Servlet、EJB等规范,并将Java分成J2EE、J2SE和J2ME三个版本,这标志着Java已经进入Java 2时代,不仅如此,JDK 1.2 还把它的API分成了核心API、可选API、特殊API三大类。

2002年2月,Sun发布了历史上最为成熟的版本:JDK 1.4。在此期间,Java语言在企业应用领域大放异彩,涌现出大量基于Java语言的开源框架:Struts、WebWork、Hibernate、Spring等;大量企业应用服务器也开始涌现:WebLogic、WebSphere、JBoss等,这都标志着Java进入飞速发展的阶段。

2004年10月,Sun发布了JDK 1.5,同时将JDK 1.5改名为Java SE 5.0,J2EE、J2ME也相应地改名为Java EE和Java ME。JDK 1.5增加了诸如泛型、增强的for语句、可变数量的形参、注释(Annotations)、自动拆箱和装箱等功能;同时也发布了新的企业级平台规范,如通过注释等新特性来简化EJB的复杂性,并退出来EJB
3.0规范
。还推出了自己的MVC框架规范:JSF,JSF规范类似于ASP.NET的服务器端控件,通过它可以快速地构建复杂的JSP页面。

2006年12月,Sun发布了JDK 1.6(也被称为Java SE6)。

2007年11月,Google宣布推出一款基于Linux平台的开源手机操作系统:Android

2009年4月20日,Sun被Oracle收购

2011年7月28日,Oracle公司终于“如约”发布了Java SE 7 ,新特性

......

通过简史,我们可以勾勒出Java语言的大致内容和模块(红色和下划线部分),这对我们系统学习Java语言有很大帮助。

Java程序运行机制

Java语言是一种特殊的高级语言,它既有解释型语言的特征,也具有编译型语言的特征,因为Java程序要经过先编译,后解释两个步骤。

编译步骤:由Java语言编写的程序需要经过编译步骤,但这个编译步骤并不会生成特定平台的机器码,而是生成一种与平台无关的字节码(也就是*.class文件)。

解释步骤:字节码是不可执行的,必须使用Java解释器(JVM)来解释执行,来生成特定平台的机器码。

JVM作用:当使用Java编译器编译Java程序时,生成的是与平台无关的字节码,这些字节码不面向任何平台,只面向JVM。不同平台上的JVM都是不同的,但它们都提供了相同的接口。JVM是Java程序跨平台的关键部分,只要为不同平台实现了相应的虚拟机,编译后的Java字节码就可以在该平台上运行。

JVM是一个抽象的计算机,和实际的计算机一样,它具有指令集并使用不同的存储区域。它具有如下细节1. 指令集 2. 寄存器 3. 类文件的格式 3. 栈 4. 垃圾回收堆 5. 存储区

备注:

JDK: Java SE Development Kit,即Java标准版开发包。

JRE : Java Runtime Environment ,Java运行时环境。

SDK: Software Development Kit

JVM: Java Virtual Machine ,即Java虚拟机

更多关于高级语言的运行机制
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: