现在有个类A,里面有静态方法B和静态属性C,
我记得static变量在类往内存装载的时候给static变量初始化,这样的话装载A的时候,C被初始化,B方法里的内容也被执行吗?,还有句什么时候装载类A呢?假如我不用class.forName(),用new来实例化这个类A的时候,具体在什么时候装载类A呢?谢谢,有点迷糊!
我记得static变量在类往内存装载的时候给static变量初始化,这样的话装载A的时候,C被初始化,B方法里的内容也被执行吗?,还有句什么时候装载类A呢?假如我不用class.forName(),用new来实例化这个类A的时候,具体在什么时候装载类A呢?谢谢,有点迷糊!
没错
你可以试一下:在A类中直接写:
static{System.out.println("...");}
这一句必定在A类装载时执行、你调用A.B()时将会看到打印,说明A被装载。