美满戒指

文章
7
资源
0
加入时间
3年12月2天

Java 中把声明变量的语句如果写在循环体内,每次执行时栈内存中的变量和数据是如何变化的?

问题一:如下面的代码示例 1,在JVM 的内存中是不是会反复回收旧的变量 a 再新建变量 a 呢?还是旧的变量 a 一直保留在栈内,只是反复赋值 0 而已呢?代码示例 1:while (true) {int a = 0;a = 5;}问题二:循环体内的引用数据类型变量 p3 是否会先回收再新建,还是保留旧的变量 p3,只是反复对其赋值而已呢?Person p1 = new Person();Person p2 = new Person();while (true) {Person