Java平台即由Java程式語言所撰寫的軟體賴以執行的平台,是Java軟體和電腦系統的中介,最初被設計用在 Applet 等桌面端程式,不過後來逐漸轉移到伺服端的運用。

Java 平台版本

编辑

Java 執行環境

编辑

Java 執行環境,即 Java Runtime Environment,简称为JRE,是在任何平台上运行Java编写的程序都需要用到的软件。终端用户可以以软件或者插件方式得到和使用 JRE。Sun 公司还发布了一个JRE的更复杂的版本,叫做JDK,即Java 2开发包,裡面包含了Java需要的编译器、参考文档和调试器等。

JRE的成分

编辑
  • Java的类库,包含了编译Java程序所需要的最核心文件。
  • 核心库文件,其中有
  • 数据结构的库,包括列表、字典和树等
  • XML分析库
  • 安全方面应用库
  • 国际化和本地化应用库
  • 综合库文件,包含了程序员和其他系统通信的功能文件。
  • JDBC,即Java数据库联通的API
  • JNDI,即Java命名和目录接口
  • RMICORBA用于重新分发软件
  • 用户界面库文件,包含:
  • AWT,即抽象窗口开发包,提供了产生图形用户界面所需要的功能
  • Swing
  • 其他用于回访媒体文件、录音、截图的库
  • 一个用于执行软件的Java虚拟机(JVM)
  • 插件,可以在浏览器裡面使用
  • JWS,可以让终端用户连接到互联网
  • 许可文件和文档

用途

编辑

桌面的应用

编辑

根据Sun公司的统计,安裝Java运行环境的个人计算机已经超过7亿。[1]自从Sun指控微软添加Windows特效类文件到Java运行环境(JRE),并通过Visual J++运行这些类文件,微软不再绑定Java运行环境到Windows操作系统。Apple的Mac OS X一般默认绑定Java运行环境, 而且许多Linux发行版也绑定一些兼容的自由软件GNU Classpath[2]

一些Java软件被桌面计算机广泛应用,比如NetBeansEclipse integrated development environments,文件共享程序如LimeWireVuze. Java还被应用于线性代数计算编程环境,包括用户界面和部分系统核心功能。

移动设备

编辑

Java ME在移动设备上越来越流行,并开始与Symbian, BREW,和.NET Compact Framework展开竞争。

因为手机制造商的多样性,需要一种新的统一标准,使程序可以运行于不同手机供应商制造的手机上。第一代这样的标准是MIDP 1,它假设手机显示屏很小,没有音频操作权限,而且只允许小于32kb的程序运行。MIDP2有声音访问权限,程序大小限制提高到了64kb。随着手机设计的能力和速度的快速提升,其发展速度远比标准的制定快的多,一些厂商开始放松了对标准的遵守,比如允许更大的程序在手机上运行。

网络服务器和企业级应用

编辑

J2EE企业级架构

扩展和相关架构

编辑

扩展和与Java程序设计语言紧密相关的架构(按字母排序)。

  • Groovy,一种用纯Java实现的脚本语言,Python的强有力竞争者
  • JAIN (Java API for Integrated Networks)Java综合网络应用程序开发接口
  • JAI,(Java Advanced Imaging)Java进阶图像
  • JAXP,(Java API for XML Processing)Java XML處理API
  • Java EE(原名J2EE),Java平台企业版
  • Java ME(原名J2ME),Java平台微型版为PDA智能手机开发的移动版本
  • Java SE(原名J2SE),Java平台标准版
  • JDBC,(Java Database Connectivity)Java数据库联通
  • JDMK,(Java Dynamic Management Kit)Java动态管理开发包
  • JDO,(Java Data Objects)Java数据对象
  • JPA,(Java Persistence API)Java持久化API
  • JJSF,Java服务器界面
  • JMF,(Java Media Framework)Java媒体框架
  • JMI,Java元数据接口
  • JML,(Java Modeling Language)Java建模软件
  • JMX,(Java Management Extensions)Java管理扩展
  • JNDI,(Java Naming and Directory Interface)Java命名和目录接口
  • JNI,(Java Native Interface)Java本地编程接口
  • JOGL,使用OpenGL的低阶三位游戏开发接口
  • JSML,(Java Speech API Markup Language)Java的语音和标记语言
  • JSP,(JavaServer Pages)Java服务器页面
  • JSF,(JavaServer Faces)
  • JXTAP2P虚拟网络协议
  • Java Card
  • Java3D,用于三维游戏编程的高阶应用程序开发接口
  • JavaSpaces
  • Jini,Java网络分布计算结构
  • Jiro
  • OSGi,(Dynamic Service Management and Remote Maintenance)动态服务管理和远程控制
  • Rhino,用Java实现的JavaScript语言。
  • Swing,Java的圖像用戶界面API
  • SWT,Standard Widget Toolkit,由IBMEclipse基金會主導開發的開源圖像用戶界面API
  • SuperWaba,手持设备的虚拟机程序

注釋

编辑
  1. ^ Include Java Software with Your PCs!. sun.com. [2006-10-25]. (原始内容存档于2006-10-25). 
  2. ^ Results of comparison between jdk15 and classpath. kaffe.org. [2010-09-26]. (原始内容存档于2007-09-28). 

📚 Artikel Terkait di Wikipedia

BIRT

Java环境的运行时组件。BIRT项目还包括一个图表引擎,它既被充分融入到了报表设计器,也可在整合图表到应用中时单独运用。 BIRT报表的设计文件以XML格式存储。BIRT可以访问多种不同的数据源,包括Java数据对象(英语:Java Data Objects)(JDO)数据源、JFire脚本对象(英语:JFire

Java持久化API

CMP(持久化管理容器)的持久性解决方案 Java持久化API作为统一Java Data Objects API和EJB 2.0容器管理持久性(CMP)API的一部分来开发。截至2009年,支持这些API的大多数产品都支持Java持久化API。 Java持久化API仅为关系数据库管理系统提供持久化

对象关系映射软件列表

Enterprise Objects Framework,Mac OS X/Java,是苹果公司WebObjects的一部分 Hibernate,开源 ORM 框架,广泛使用 iBATIS,由ASF维护,并且有 .NET移植 Java Data Objects (JDO) Java Persistence

約書亞·布洛克

Abstract Data Objects),曾被提名為ACM傑出博士論文獎。 他曾在Transarc擔任資深系統工程師,後至Sun公司工作,領導開發了包括Java集合框架,java.math套件與assert機制等功能。2004年6月,他轉換跑道到Google,擔任Google首席Java架構師。2012年8月3日,自Google離職。

值物件

hashCode() { return Objects.hash(street, city); } } 上述的程式,到Java 14就變簡單了。 public record StreetAddress (String street, String city) {} data class StreetAddress(val

Kotlin

Kotlin是一種在Java虛擬機上執行的靜態型別程式語言,它也可以被編譯成為JavaScript原始碼。 2011年7月,JetBrains在俄羅斯聖彼得堡的開發團隊推出Kotlin项目,其名稱來自於聖彼得堡附近的科特林島。2012年1月,著名期刊《Dr. Dobb's Journal(英语:Dr

JCP

JCP(Java Community Process)成立于1998年,是使有兴趣的各方参与定义Java的特征和未来版本的正式过程。 JCP使用JSR(Java规范请求,Java Specification Requests)作为正式规范文档,描述被提议加入到Java体系中的的规范和技术。

Java集合框架

Java集合框架(Java collections framework)是一個包含一系列實作可重複使用集合的資料結構的類別和介面集合。雖然稱為「框架」,其使用方式卻像個函式庫。集合框架提供了定義各式各樣集合的介面和實作上述集合的類別。 集合和陣列在兩者保持物件參考核可被視作為一個團體上有著功能上的