WEB开发网
开发学院软件开发Java 从虚拟机视角谈 Java 应用性能优化 阅读

从虚拟机视角谈 Java 应用性能优化

 2010-07-15 00:00:00 来源:WEB开发网   
核心提示: 不同平台的 API 和可用的第三方库Java EE 和 Java SE 是超集与子集的关系,因为她们所处的计算机平台和操作系统目前很好的兼容,从虚拟机视角谈 Java 应用性能优化(2),而 Java ME 和 Java Card 与 EE 和 SE 是 Totally different,除了

不同平台的 API 和可用的第三方库

Java EE 和 Java SE 是超集与子集的关系,因为她们所处的计算机平台和操作系统目前很好的兼容,而 Java ME 和 Java Card 与 EE 和 SE 是 Totally different,除了 java.lang.*,部分 java.io.* 等核心类库保留外,其他的 API 和类库完全不同。java.microedition.* 和 javax.microedition.* 表明这是 ME 平台,javacard.* 表明这是 Java Card 平台。同时,由于 EE 和 SE 平台的普及程度和开发者人数,使得之上的第三方库十分海量。深入了解和掌握平台的 API 和库是不同平台程序员进阶的必由之路。

从这个角度上说,Java 在不同的平台之间,并不是“一次编写、处处运行”,考虑应用程序的设计和优化的时候,首先要看是在什么平台上,因为源于以上不同的特点,编程模型、设计模式,甚至语言集都不尽相同。在这里我们着重考虑 Java EE 和 SE 的视角,但有很多设计、编程原则和习惯对于所有平台的程序员来说,都适用。

Java 虚拟机

Java 虚拟机是支持 Java 语言运行的基础,避开过多的 JVM 和实现的技术细节,我们对基础架构进行了解,是进行应用程序优化必不可少的。如下图所示:

图 1. Java 虚拟机体系结构
从虚拟机视角谈 Java 应用性能优化

类装载子系统:通过类的全限定名(包名和类名,网络装载还包括 URL)将 Class 装载进运行时数据区;

方法区:Class 对于所有方法和 static 静态数据的定义存储在这里,它就像一张表或数组,让程序执行时在这里找到相应方法的 Java 字节码和静态数据;

上一页  1 2 3 4 5 6 7  下一页

Tags:虚拟 视角 Java

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接