Java技术体系简介

Java技术体系简介

广义

广义上讲,Clojure、JRuby、Groovy等运行在Java虚拟机上的语言及其相关的程序都属于Java技术体系的一员。

传统意义

Sun官方定义的Java技术体系包括以下几个组成部分:

  • Java程序设计语言

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

  • Class文件格式

  • Java API类库

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

即: Java语言, Class文件规范, 各种虚拟机, API及第三方类库

JDK = Java语言 + Java虚拟机 + Java API类库 (支持Java程序开发的最小环境)
JRE = Java虚拟机 + Java SE API子集 (支持Java程序运行的最小环境)

Java SE API子集

Java SE API子集包括:

功能 类库
用户界面 AWT, Swing, Java 2D
相关技术 Accessbility, Drag n Drop, Input Methods, Image I/O, Print Service, Sound
集成库 IDL, JDBC, JNDI, RMI, RMI.IIOP, Scripting
其他基础库 Beans, Intl Support, I/O, JMX, JNI, Math, Networking, Override Mechanism, Security, Serialization, Extension Mechanism, XML, JAXP
语言和工具基础库 lang and util, Collections, Concurrency Utilities, JAR, Logging, Management, Preferences API, Ref Objects, Reflection, Regular Expressions, Versioning, Zip,Instrument
Java虚拟机 Java Hotpot ClientVM, Java Hotpot Server VM

JRE

JRE除了完全包括Java SE API, 还包括程序发布相关组件:

Deployment, Java WEb Start, Java Plug-in

JDK

JDK除了完全包括JRE, 还包括:

  1. Java语言(Java Language)

  2. 工具及工具API(java, javac, javadoc, apt, jar, javap, JPDA, JConsole, Java VisualVM, Security, Int`l, RMI, IDL, Deploy, Monitoring, Troubleshoot, Scripting, JVM TI)

Java技术平台

Java技术关注的重点业务领域来划分,Java技术体系可分为四个平台:

  1. Java Card: 支持一些Java小程序(Applets) 运行在小内存设备(如智能卡)上的平台。

  2. Java ME(Micro Edition): 支持Java程序运行在移动终端(手机、PDA)上的平台,对Java API有所精简, 并加入了针对移动终端的支持,这个版本以前称为J2ME。

  3. Java SE(Standard Edition): 支持面向桌面级应用(如Windows下的应用程序)的Java平台,提供了完整的Java核心API,这个版本以前称为J2SE。

  4. Java EE(Enterprise Edition): 支持使用多层架构的企业应用(如ERP、CRM应用)的Java平台,除了提供Java SE API外,还对其做了大量的扩充并提供了相关的部署支持,这个版本以前称为J2EE。