不使用返回变量会导致内存泄漏

时间:2019-01-02 20:04:14

标签: java memory-leaks

不存储或使用“和”返回值是否可能导致内存泄漏?

public int sum(int a, int b){
    System.out.println("total is: "+(a+b));
    return a+b;
}

sum(2,3);

2 个答案:

答案 0 :(得分:4)

不,不是。由于它是原始值,因此它位于堆栈上,并且没有为其分配堆内存。

但是,为了演示起见,我们假设您返回的是对象而不是原始值(例如return new Integer(a+b))。仍然不会发生内存泄漏,因为返回的对象将没有对它的引用,因此将受到垃圾回收。

答案 1 :(得分:-1)

否,Java具有垃圾收集器来帮助管理内存。 希望这会有所帮助。 What is the garbage collector in Java?