1,对象定义在错误的范围
以下代码:如果Foo实例对象的生命较长,会导致临时性内存泄漏,
class Foo{
private String [] names;
public void doIt(int length){
names=new String[length]
print(name)
}
}
JVM喜欢生命周期短的对象,
class Foo{
public void doIt(int length){
String [] name=new Strirng[length];
print(names)
}
}
2,异常处理不当
各种资源的关闭一定要放在finally里面
3,集合数据管理不当
当使用数组的数据结构(arraylist,hashmap等)时,尽量减少resize