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

語音合成標記語言

迎,像是蘋果電腦內嵌的語音命令以及微軟的SAPI(英语:Microsoft Speech API),也同樣是XML標記語言。 SSML是以Java Speech Markup Language(英语:Java Speech Markup Language)(JSML)為基礎,由昇陽電腦所開發。SS

MARF

Framework,MARF)是一个用JAVA写的采集声音/语音/语言/文本和自然语言处理(NLP)算法的研究平台。它被安排进一个模件和延伸性框架用来试图促进新的算法。MARF可在应用软件中用作库来使用或作为学习和扩展的原始资料。MARF提供了几种应用的例子来展示如何使用框架。同时MARF提供了详细的JAVA DOC格式使用手册和API

自由及开放源代码软件列表

OSGI ERP 企业资源计划 Ino erp——基于动态Pull的ERP系统 jFin JFire——用Java和JDO写成的ERP商务套件 JQuantLib——基于Java的定量金融学应用接口(API)框架,适用于金融工具的估值和更多…… KMyMoney——复式簿记 LedgerSMB——复式簿记

Reddit

宣布它將從7月起更改其应用程序接口(API)服務定價,該服務以前對大多數用例都是免費的。雖然在一次紐約時報採訪中,Reddit聲稱將繼續仍然免費提供API服務予想要建立幫助其他人使用 Reddit的應用程序的開發人員。然而,在5月31日,第三方Reddit客戶端Apollo的開發者指Reddit將對每五千萬次的API請求收取12

Twitter

年开始,Twitter已经开始逐渐在用Scala编写的程序来进行消息处理。同时,这项服务提供的API允许众多网站与Twitter整合。 2011年,Twitter從Ruby on Rails切换至Java,從MySQL切换到Lucene;新的核心框架使Twitter的搜索性能增加到原来的3倍。

Android版本列表

SDK(版本号m3-rc20a)。这一软件开发包(SDK)面向开发者,包含基本的 Android 模拟器、核心库和调试工具,旨在让开发者提前熟悉 Android 的架构和 API。然而,其功能较为有限,缺乏成熟的用户界面和完整的应用程序框架。 Google主题 Android主题 Android 安迪·鲁宾 Google 智能手機

Firefox版本列表

26將Java外掛程式更改為需點擊才會啟用,而不是自動執行。另外還增加了對Linux的H.264支援、密碼管理員支援指令碼產生的密碼欄位以及對Firefox安裝目錄沒有寫入權限的Windows使用者也能更新程式。 Firefox 27.0正式版发布于2014年2月4日。改進Social API和支援SPDY

一体化医学语言系统

机读型版本,并随后在编辑和审核方面进行人工干预而产生的。Metathesaurus的分发形式为一种SQL关系数据库,且可以通过一种Java面向对象型应用编程接口(API)来加以访问。 Metathesaurus之中的每个概念都指定有至少一种“语义类型(Semantic