启动
通过引导类加载器(bootstrap class loader)创建一个初始类(initial class)来完成,这个类是由虚拟机的具体实现指定
执行
一个运行中的Java虚拟机有着一个清晰的任务:执行Java程序
程序开始执行时jvm才运行,程序结束才停止
执行一个所谓的Java程序其实是在执行一个jvm进程
退出
程序正常执行结束
程序在执行过程中遇到了异常或者错误而终止
由于系统错误而终止
线程执行了Runtime、System的exit方法,或者Runtime类的halt方法,并且Java安全管理器也允许这次exit或者halt操作
除此之外,JNI(Java Native Interface)规范描述了用JNI Invocation API来加载或卸载Java虚拟机时,Java虚拟机的退出情况。