不存储或使用“和”返回值是否可能导致内存泄漏?
public int sum(int a, int b){
System.out.println("total is: "+(a+b));
return a+b;
}
sum(2,3);
答案 0 :(得分:4)
不,不是。由于它是原始值,因此它位于堆栈上,并且没有为其分配堆内存。
但是,为了演示起见,我们假设您返回的是对象而不是原始值(例如return new Integer(a+b)
)。仍然不会发生内存泄漏,因为返回的对象将没有对它的引用,因此将受到垃圾回收。
答案 1 :(得分:-1)
否,Java具有垃圾收集器来帮助管理内存。 希望这会有所帮助。 What is the garbage collector in Java?