java优化编程-内存管理

内存管理的重要性:
java语言的性能极大程度上依赖于其运行的硬件环境资源,内存是硬件环境资源中非常重要的一部分,因此,如果开发人员开发的java
应用没能有效合理的使用系统内存,那么这个应用就不可能具备较高的性能。
JVM管理的内存的两种类型:
堆内存(heap)与栈内存(stack)
简单的解释一下堆内存与栈内存,堆内存用来存储程序在运行时创建或实例化的对象与变量;
而栈内存用来存储程序代码中的方法(包括静态方法和非静态方法)

对象的创建阶段:
在创建对象时的几个关键应用规则:
(1)避免在循环体中创建对象,即使对象占用的内存空间不大
(2)尽量及时使对象符合垃圾回收标准
(3)不要采用过深的继承层次
(4)访问本地变量优于访问类中的变量

对象的应用阶段:
系统中除非特别声明,否则到所有对象的引用全部都时强引用(Strong Reference),我们还可以使用的其它引用方法有:
(1)软引用(Soft Reference)
     简单介绍一下软引用,软引用通常用于实现一些常用资源的缓存,实现Cache的功能,能够确保java的内存溢出(OutOfMemory)。
(2)弱引用(Week Reference)
(3)虚引用(Phantom Reference)

不要显示的调用垃圾回收,这会降低垃圾回收的效率。

你可能感兴趣的:(java,jvm,编程,cache)