垃圾回收机制class Garbage{
int index;
static int count;
Garbage(){
count++;
System.out.println("此类被实例化了"+count+"次");
index++;
setID(count);
}
void setID(int id){
index=id;
}
protected void finalize(){
System.out.println(index);
}
public static void main(String[] args){
new Garbage();
new Garbage();
new Garbage();
new Garbage();
new Garbage();
new Garbage();
new Garbage();
new Garbage();
new Garbage();
System.gc();
}
}为什么要用 void setID(int id)这个方法来给setID负值呢,直接用index=count不可以吗?
int index;
static int count;
Garbage(){
count++;
System.out.println("此类被实例化了"+count+"次");
index++;
setID(count);
}
void setID(int id){
index=id;
}
protected void finalize(){
System.out.println(index);
}
public static void main(String[] args){
new Garbage();
new Garbage();
new Garbage();
new Garbage();
new Garbage();
new Garbage();
new Garbage();
new Garbage();
new Garbage();
System.gc();
}
}为什么要用 void setID(int id)这个方法来给setID负值呢,直接用index=count不可以吗?
利用一个函数setID来赋值,在以后在需要对ID赋值的同时做其他操作,不需要更改代码,只需要更改这个函数即可.