在没有返回值的接收者对象的情况下调用非无效方法时,JVM会做什么?
它只是在找不到收件人的那一刻破坏了返回的对象?还是让返回的对象由垃圾收集器管理?或者是其他东西?。例如:
public class PrincipalClass {
public static void main(String[] args) {
returnStringMethod();
}
public static String returnStringMethod() {
return "Hello, Java world!";
}
}
“您好,Java世界!”发生了什么?那被退回了吗?在什么时间被摧毁?
最佳答案
假设您点了餐。这顿饭装在一次性的盒子里。你拿出食物吃了。现在这些盒子对您来说毫无用处。您如何处理它们?丢弃它们。 Java GC也是如此。当没有通过任何对象引用或无法访问任何对象时,它将在下次触发gc时获得。看到这种情况的一种好方法是打开jvisualvm并继续跟踪String文字,然后启动gc。您会实时看到事物。
我希望这有帮助..!