Java性能优化的几个细节

△尽可能使用局部变量
调用方法时传递的参数以及在调用中建立的临时变量都保存在栈(Stack)中,速度较快;其余变量,如静态变量、实例变量等,都在堆(Heap)中建立,速度较慢。线程

△尽可能处理好包装类型和基本类型二者的使用场所
虽然包装类型和基本类型在使用过程当中是能够相互转换,但它们二者所产生的内存区域是彻底不一样的,基本类型数据产生和处理都在栈中处理,包装类型是对象,是在堆中产生实例。在集合类对象,有对象方面须要的处理适用包装类型,其余的处理提倡使用基本类型。对象

△慎用synchronized,尽可能减少synchronize的方法
都知道,实现同步是要很大的系统开销做为代价的,甚至可能形成死锁,因此尽可能避免无谓的同步控制。synchronize方法被调用时,直接会把当前对象锁了,在方法执行完以前其余线程没法调用当前对象的其余方法。因此,synchronize的方法尽可能减少,而且应尽可能使用方法同步代替代码块同步。内存

相关文章
相关标签/搜索