代码:
package com.antique; public class Test { private String s = "123"; public String getS() { return s; } public static void main(String[] args){ System.out.println(new Test().getS()); } }
背景:
在一个类中有实例化本类对象的行为,我的理解如下:Java程序分为编译与运行两部分,在编译的时候使用javac,这个时候把`Test.java`编译成`Test.class`,在执行到以上程序的`new Test()`时,JVM把该指令传递给CPU,CPU在堆空间才开辟一个具体的内存空间用来存放一个Test对象。
问题:存放在对空间中的Test对象,其中也有一个本身自己的实例化的代码,该代码会不会执行,造成类似于迭代效果的后果?
不会,堆中的test对象的默认值是个空值
什么叫类似迭代效果的后果?