Java不同於一般的编译语言和直译语言。它首先将原始码编译成位元组码,然后依赖各种不同平台上的虚拟机器来解释执行位元组码,从而实作了「一次编写,到处执行」的跨平台特性。在早期JVM中,这在一定程度上降低了Java程式的执行效率。但在J2SE1.4.2释出后,Java的执行速度有了大幅提升。
与传统型态不同,Sun公司在推出Java时就将其作为开放的技术。全球数以万计的Java开发公司被要求所设计的Java软体必须相互相容。「Java语言靠群体的力量而非公司的力量」是Sun公司的口号之一,并获得了广大软体开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同,此外,微软公司后来推出了与之竞争的.NET平台以及模仿Java的C#语言。后来Sun公司被甲骨文公司并购,Java也随之成为甲骨文公司的产品。