Java 技术体系

作者: allenggg | 来源:发表于2018-03-27 22:32 被阅读0次

sun官方定义的java技术体系

  1. java程序设计语言
  2. 各种硬件平台上的Java虚拟机
  3. Class文件格式
  4. Java API类库
  5. 来自商业机构和开源社区的第三方Java类库

JDK:Java Develement Kit--支持java程序开发的最小环境

  1. Java程序设计语言
  2. Java虚拟机
  3. Java API类库

JRE:Java Runtime Environment

  1. Java虚拟机
  2. Java API类库中的Java SE API子集

按技术服务领域或Java技术关注的重点业务领域划分Java技术体系

  1. Java Card:支持一些Java小程序(Applets)运行在小内存设备上(如智能卡)的平台
  2. Java ME(Micro Editon):支持Java程序运行在移动终端(手机、PDA)上的平台
    • 对Java API有所精简,并加入了针对移动终端的支持
    • 以前称为J2ME
  3. Java SE(Standard Editon):支持面向桌面级应用(如windows下的应用程序)的Java平台,提供了完整的Java核心API
    • 以前称做J2SE

4 . Java EE(Enterprise Edition):支持使用多层架构的企业应用(如ERP、CRM应用)的Java平台

  • 提供Java SE API
  • 还做了大量的扩充并提供了相关的部署支持
  • 这些扩展一般以javax.*作为包名,而以java.*为包名的包都是Java SE API的核心包,但由于历史原因,一部分曾经是扩展包的API后来进入了核心包,因此核心包中也包含了不少javax.*的包名
  • 以前称为J2EE

Java发展历程

  1. Oak(橡树):一种在各种消费性电子产品上运行的程序架构(不成功)

  2. Java:互联网的出现,Oak迅速找到最适合自己的市场定位蜕变为Java

  3. JDK 1.0

    • Write Once, Run Anywhere
    • 纯解释执行的Java虚拟机实现(Sun Classic VM)
  4. JDK 1.2

    • Java技术体系拆分为:J2ME, J2SE, J2EE
    • Java虚拟机内置JIT(Just In Time)编译器,HotSpot和Exact虚拟机内置JIT编译器,Sun Classic VM以外挂的形式使用JIT编译器
  5. JDK 1.5

    • 改变非常大
    • 自动装箱、泛型、动态注解、枚举、可变长参数、遍历循环(foreach)等
    • 改进Java内存模型(Java Memory Model,JMM)
    • 提供了java.util.concurrent并发包
  6. JDK 1.6

    • 启用Java SE 6 Java EE 6,Java ME 6命名方式
    • 对Java虚拟机内部做了大量改进,包括锁与同步、垃圾收集、类加载等方面的算法
  7. JDK 1.7 (Oracle收购Sun)

    • G1(GarbageFirst)垃圾收集器
    • Oracle开始支持mac OS X操作系统
  8. JDK 1.8

    • Lambda表达式

JDK从1.5开始,使用JDK5/JDK6命名

Java virutal machine

  • Sun Classic VM

    第一款商用Java虚拟机
    纯解释器方式
    要使用JIT(Just In Time)编译器,必须进行外挂
    如果外挂了JIT,JIT完全接管了虚拟机的执行系统,解释器不在工作

  • Exact VM

执行系统具备现代高性能虚拟机的雏形
两级JIT、编译器与解释器混合工作
准确的内存管理(Exact Memory Management),即虚拟机知道内存中某个位置的数据具体是什么类型

  • HotSpot

Sun JDK 和OpenJDK中自带虚拟机
目前使用范围最广

  • Longview Technologies公司设计,Sun收购该公司后获得
  • 准确内存管理(Exact Memory Management)
  • 热点代码探测技术:通过执行计数器找出最具有编译价值的代码,通知JIT以方法为单位进行编译
  • 通过编译器和解释器的恰当协同工作,可以在最优化的程序响应时间最佳执行性能中取得平衡
  • 无须等待本地代码(编译结果)输出才能执行程序,及时编译的时间压力也相对减小,助于引入更多的代码优化技术,输出质量更高的本地代码

相关文章

  • 1.Java概述

    Java概述 技术体系 Java技术体系技术体系说明Java SE(Java Standard Edition):...

  • JVM 学习记录

    一、Java 1.1 Java 技术体系包含什么? Java 技术体系包含Java 程序设计语言、Java 虚拟机...

  • 1.认识Java虚拟机

    Java技术体系 sun官方定义的Java技术体系 Java程序设计语言 Java虚拟机 Class文件格式 Ja...

  • 《深入理解Java虚拟机》笔记01:走近Java

    1、Java相关概念 1.1 Java的技术体系 Sun官方所定义的Java技术体系包括以下几个组成部分: Jav...

  • Java技术体系

    java技术体系 Sun官方定义的java技术体系包括: Java程序设计语言 各种硬件平台上的Java虚拟机 C...

  • Java虚拟机 -- 概述

    一、Java技术体系 Sun官方定义的Java技术体系包括以下几个组成部分: Java程序设计语言 各种硬件平台上...

  • Java生态体系并梳理各项基本概念

    Java生态技术体系科普 Java技术体系至少包括四个部分 1.Java程序设计语言2.各种平台上的Java虚拟机...

  • Java技术体系

    1.Java技术体系 Sun官方定义的Java技术体系:Java程序设计语言各平台的JVM虚拟机Class文件格式...

  • java虚拟机:体系介绍

    体系结构 JAVA体系包括四个独立但相关的技术 Java 程序设计语言 Java class 文件格式 Java ...

  • 2018全新互联网Java架构技术体系路线

    2018全新互联网Java架构技术体系路线: 一:常见模式与工具 学习Java的技术体系,设计模式,流行的框架与组...

网友评论

    本文标题:Java 技术体系

    本文链接:https://www.haomeiwen.com/subject/nugjcftx.html