JVM是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能模拟来实现的。它有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。
为什么使用JVM?
(1)Java语言最重要的特点就是可以在任何操作系统中运行。
(2)使用Java虚拟机就是为了支持与操作系统无关,在任何系统中都可以运行
Java的内存由3个代组成:
(1)Yong(年青代,也叫new区) 可以分为Eden区和两个Survivor区,新的对象实例总是首先放在Eden区,Survivor区作为Eden区和Tenure(old)的缓冲,可以向Tenure(old)转移活动的对象实例。
(2)Tenured(保持代,也叫old区) Tenure中存放生命周期长久的实例对象,但是里面的对象也是会被回收掉的,Yong和Tenure组成了Java的堆内存(Heap)。
(3)Perm(永久代) Perm则是非堆内存的组成部分,主要存放加载的Class类级对象如class本身,method、field等。
JVM与weblogic的关系:Weblogic是运行在JVM上的实例。如果希望weblogic运行稳定且性能最好,需要对JVM进行调整。
类加载器是用来加载Java类到Java虚拟机中。
java类加载器包含具有父类加载器和子类加载器的层次结构。