我不知道如何删除其他方法中的对象,例如我想删除deleteObject
方法中的dog
对象,但它只是删除当前对象的引用! 有没有解决方法?如何在Java中使用其他方法删除对象?
public class Main {
public static void main(String[] args) {
Dog dog = new Dog("Max");
deleteObject(dog);
System.out.println(dog.toString()); //it still exists! I want to remove it
}
public static void deleteObject(Dog dog) {
dog = null; //I want to remove this object but it deletes just this method's reference
}
}
class Dog {
private String name;
public Dog(String name) {
this.name=name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
使狗成为一个全局变量,它会正常工作。但我建议你可以使用单例模式,如果你需要更好地使用对象。 – zengr 2010-11-23 09:32:30
你是什么意思是“删除”? - 释放内存? – Ralph 2010-11-23 09:38:11
全局是静态变量?如果我尝试静态狗狗;它仍然没有工作。我试图使用signletone模式,但在我的应用程序中,它并不是最好的决定,因为它使用多线程 – gennad 2010-11-23 09:39:53