zoukankan      html  css  js  c++  java
  • Java技术体系

    Java优点:

    • 一次编写,到处运行
    • 安全的内存管理和访问机制
    • 热点代码检测和运行时编译及优化
    • 完善的应用程序接口
    • 无数的第三方类库等

    广义上讲,能够运行于Java虚拟机上的语言及相关程序都属于Java技术体系。

    传统意义上讲,Sun定义的Java技术体系包括:

    • Java程序设计语言

    • 各种硬件平台上的Java虚拟机

    • Class文件格式

    • Java API类库

    • 来自商业机构和开源社区的第三方Java类库

    JDK是支持Java开发的最小环境,包括Java程序设计语言,Java虚拟机和Java API类库三部分

    JRE是支持Java运行的标准环境,包括Java API中Java SE API和Java虚拟机

    下图为Java技术体系所包含的内容1

    Java技术体系

    主流JVM

    • Sun HotSpot VM
    • BEA JRocket VM
    • IBM J9 VM

    Java技术未来

    模块化

    • Java SE动态组件支持(Dynamic Component Support for Java SE),即OSGI
    • OpenJDK的Jigsaw子项目推动Java模块化

    混合语言

    虚拟机不和包括Java在内的任何语言绑定,它只与Class文件关联。因此只要符合Java虚拟机规范,任何一门语言编译出的Class文件都是可以被接受的。

    目前在JVM上运行的脚本语言Top5:Groovy,JRuby,Scala,Fantom,Jython

    多核并行

    JDK1.5引入的java.util.concurrent包实现了粗粒度的并发框架,JDK1.7加入的java.util.concurrent.forkjoin对这一框架进行了重要扩充。

    OpenJDK子项目Sumatra利用GPU和APU运算能力,提供Java语言层面的API支持

    Hadoop, Scala, Clojure等

    进一步丰富的语法

    • 自动装箱、泛型、动态注解、枚举、可变长参数、遍历循环等语法
    • OpenJDK子项目Coin用来收集处理Java语法细节修改

    64位虚拟机

    64位虚拟机相对于32位存在指针膨胀和各种数据类型对齐问题,多消耗额外10%-30%的内存。JDK 1.6提供了-XX:+UserCompressedOops用于普通对象指针压缩。但是毫无疑问,主流虚拟机终将会发展至64位。

  • 相关阅读:
    (转)C++ typename的起源与用法
    EOS智能合约深度解析
    cmake常用变量和命令解析
    (转)Linux下source命令详解
    eosio_install.sh执行过程
    java之collection总结
    Guava之RangeMap
    java file.listFiles()按文件名称、日期、大小排序
    Java下载文件的几种方式
    Java泛型Class<T>、T与Class<?>
  • 原文地址:https://www.cnblogs.com/zhq-blogs/p/9008393.html
Copyright © 2011-2022 走看看