Java中存在各种各样的API, 也许正是这些API的制定使得Java能够像今天这样繁荣. API代表了标准, 开源则使各种API的实现百花齐放.
应该说, JavaEE是一系列为解决在企业应用开发中各种问题而制定的APIs. SUN制定了Java EE规范(即API), 但这些规范并不涉及具体实现, 应用服务器的多样性正好说明了这一点. 新的JavaEE API还在制定, 因此Java EE是一个不断扩充的规范. 事实上, JavaEE中许多常用的API被添加到JavaSE中以使独立应用程序也具有企业应用程序的一些特征.
容器为Java应用程序提供了一种新的开发方式. 容器是Standalone的, 而应用程序则是Contained的, 容器为各个应用程序提供了运行环境, 在这个运行环境里有应用程序需要的各种资源和公共服务.