• [Java]Java简介


    Java版本历史

    • 1995年5月23日,Java语言诞生
    • 1996年1月,第一个JDK1.0诞生
    • 1996年4月,10个最主要的操作系统供应商申明将在其产品中嵌入JAVA技术
    • 1996年9月,约8.3万个网页应用了JAVA技术来制作
    • 1997年2月18日,JDK1.1发布
    • 1997年4月2日,JavaOne会议召开,参与者逾一万人,创当时全球同类会议规模之纪录
    • 1997年9月,JavaDeveloperConnection社区成员超过十万
    • 1998年2月,JDK1.1被下载超过2,000,000
    • 1998年12月8日,JAVA2企业平台J2EE发布
    • 1999年6月,SUN公司发布Java的三个版本:标准版(J2SE)、企业版(J2EE)和微型版(J2ME)
    • 2000年5月8日,JDK1.3发布
    • 2000年5月29日,JDK1.4发布
    • 2001年6月5日,NOKIA宣布,到2003年将出售1亿部支持Java的手机
    • 2001年9月24日,J2SE1.3发布
    • 2002年2月26日,J2SE1.4发布,自此Java的计算能力有了大幅提升
    • 2004年9月30日18:00PM,J2SE1.5发布,成为Java语言发展史上的又一里程碑。为了表示该版本的重要性,J2SE1.5更名为Java SE 5.0
    • 2005年6月,JavaOne大会召开,SUN公司公开Java SE 6。此时,Java的各种版本已经更名,以取消其中的数字“2”:J2EE更名为Java EE,J2SE更名为Java SE,J2ME更名为Java ME 
    • 2006年12月,SUN公司发布JRE6.0
    • 2009年12月,SUN公司发布Java EE 6
    • 2010年11月,由于Oracle公司对于Java社区的不友善,因此Apache扬言将退出JCP
    • 2011年7月28日,Oracle公司发布Java SE 7
    • 2014年3月18日,Oracle公司发表Java SE 8

    2、Java平台:

    广泛地说,只要能执行Java bytecode者,就可以称为Java 平台(Java platform)。大致上,实现Java平台(implementations of the Java SE platform)的方式有三种,分别是:

    • Java虚拟机器(Java Virtual Machine,JVM)
    • Java操作系统(Java Operating System)
    • Java芯片(Java Chip)

    以下就此三种Java平台提出解说,并比较之。

    2.1、Java虚拟机器:

    所谓的Java虚拟机器,指的是在操作系统上执行的一种程序,此程序可以解读Java 字节码(bytecode),并在操作系统的帮助下执行Java 字节码。这样的执行架构,大致上可以分成四层,分别是:

    • 第一层(最上层)的Java bytecode
    • 第二层的Java虚拟机器
    • 第三层的操作系统
    • 第四层(最底层)的芯片

    芯片执行上面的操作系统,操作系统执行上面的Java虚拟机器,Java虚拟机器执行上面的Java bytecode。对于Java bytecode来说,它只接触到Java虚拟机器,所以当然“误以为”Java 虚拟机器就是它的平台。

      实例:Pentium III Chip + Windows 2000 OS + Sun HotSpot Client VM + Together/ Java pplication。

    2.2、Java 操作系统:

    如果把Java虚拟机器整合进既有的操作系统中(例如:Mac OS X),或是打造一个全新的操作系统专门执行Java bytecode(例如:JOS),这类能直接执行Java bytecode的操作系统也可视为Java平台。这样的执行架构,大致上可以分成三层,分别是:

    • 第一层(最上层)的Java bytecode
    • 第二层的 Java 操作系统
    • 第三层(最底层)的芯片

    2.3、Java 芯片:

    如果把Java操作系统和既有的芯片整合起来成为一组新的芯片(例如:ARM 7、ARM 9),或者打造一个全新的Java专用芯片(例如:aJile aJ-100)那么此一种类的芯片也是Java平台。这样的执行架构,大致上可以分成两层,分别是:

    • 第一层(最上层)的Java bytecode
    • 第二层(最底层)的Java 芯片

    三种方式的比较

    这三种都是 Java 平台,各有优缺点,很难说那一种方式比较好,必须看你的需求而定。

    透过虚拟机器来执行Java是最常见的架构方式,一方面是因为虚拟机器的Java平台最容易被实作出来(相较于Java操作系统和Java芯片 而言),二方面是因为只要有虚拟机器就可以让在不更动实体平台(操作系统和CPU)的情况下多了执行Java程序的功能。目前,多数主流的实体平台(包括 Windows、Linux、Mac、Solaris、PalmOS、EPOC...)都已经有Java虚拟机器了。

    虚拟机器的架构因为分了太多层级,所以效率上当然会比较差,这是虚拟机器架构最为人所抨击的地方。但是由于虚拟机器的技术一直在进步,所以执行 效率一直都有持续的提升。目前已经相当逼近Java操作系统的架构方式,所以虚拟机器的方式应该会继续成为PC上的Java平台主流。

    一般来说,透过Java操作系统来执行Java bytecode,效率会比虚拟机器的方式好。所以Java虚拟机器被整合进操作系统中,来提升该操作系统的附加价值,这种作法有可能会成为一种趋势(例 如MacOS X就把 Java和操作系统作了很好的整合)。但如果设计一套只能执行Java的全新操作系统,可能不容易成功,因为全新的操作系统势必面临驱动程序 (device driver)不足的严重困扰。因为此原因,加上事实证明操作系统的Java平台,比虚拟机器的Java平台效率提升不如预期多,所以IBM和Sun合作 的纯Java操作系统“JavaOS”计划已经停摆。

    利用芯片的方式来实作Java平台,对于Java程序的执行速度会有很大的提升,毕竟硬件的速度比软件快许多。这种方式以后会成为嵌入式系统的 主流,许多Java的IA产品(例如:Set-Top Box)都会开始使用 Java芯片。但是这种方式已经把Java整个变成硬件平台,不适合再称为跨平台了。

  • 相关阅读:
    2016中国大学生程序设计竞赛
    POJ 2239 化二分图右集合二维为一位的最大匹配
    POJ 1274 二分图最大匹配简单单向
    二分图最大匹配模板
    找割点和割边
    HDU 4432 求因子+进制转换
    HDU 4438 概率 多个情况下的数学期望
    HDU 4424 并查集+贪心思想
    POJ 1611 记录节点数的并查集
    HDU 4430 二分查找
  • 原文地址:https://www.cnblogs.com/victor-ma/p/4341804.html
Copyright © 2020-2023  润新知