在创建对象时的几个关键应用规则
1、避免在循环体中创建对象,即使该对象占用内存空间不大,
2、尽量及时使对象符合垃圾回收标准。
3、不要采用过深的继承层次。
4、访问本地变量优于访问类型中的变量。
方式一、
For( int i=0;i<10000;++i){
Object obj=new Object();
System.out.println(“obj=”+obj);
}
上面代码的书写方式会浪费较大的内存空间,正确的方式如下所示:
Object obj=null;
For( int i=0;i<10000;++i){
Object obj=new Object();
System.out.println(“obj=”+obj);
}
采用下面的编写方式,仅在内存中保存一份对该对象的引用,而不像上面的代码会在内存中产生大量的对象应用,浪费大量的内存空间,而且增大了系统做垃圾回收的负荷,因此在循环体重声明创建对象的编写方式尽量避免。
另外,不要对一个对象初始化多次,这同样会带来较大的内存开销,降低系统性能。
如: public class A{
Private Hashtable table=new Hashtable();
Public A(){
//将Hashtable 对象table初始化了两次
Table=new Hashtable();
}
}
正确的方式为:
Public class B {
Private Hashtable table=new Hashtable();
Public B(){
}
}