在运行以下语句时都发生了什么?
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello world !");
}
}
首先
系统分配内存给JVM
JVM启动,
开启各种守护线程,并启动工作线程,
工作线程启动后classloader将class文件校验后加载到JVM中
JVM 分配在堆中的方法区中的常量池中写入“Hello world !”
println方法打开输出流,将“Hello world !”对象输出到控制台,
并换行
工作线程执行结束
守护线程执行结束
JVM执行结束
释放内存
执行结束