初始化是Jvm在加载类之后做的事情 比如, class Cat { private static int a = 0; private int i = 0; private int j; } Java在第一次引用类的时候加载类 当这个类加载的时候,Java就会在内存的栈中开一块地方放这个类 如果是第一次用到Cat,a会被加载在栈的一块特殊位置, 并由多个Cat对象共享这块地方 如果是用new Cat()这样的方式建立的对象,i和j会被初始化, i=0这件事情也在这时候被执行。j也被初始化为默认值0 (因此声名的时候不需要一定带上默认值)上面的过程简化的说了,其实里面很复杂,有兴趣自己看书
比如,
class Cat {
private static int a = 0;
private int i = 0;
private int j;
}
Java在第一次引用类的时候加载类
当这个类加载的时候,Java就会在内存的栈中开一块地方放这个类
如果是第一次用到Cat,a会被加载在栈的一块特殊位置,
并由多个Cat对象共享这块地方
如果是用new Cat()这样的方式建立的对象,i和j会被初始化,
i=0这件事情也在这时候被执行。j也被初始化为默认值0
(因此声名的时候不需要一定带上默认值)上面的过程简化的说了,其实里面很复杂,有兴趣自己看书