当前位置: 技术问答>java相关
在java中,什么情况下属于不同的进程,是在不同的classload中加载的class,还是在不同的jvm中加载的class
来源: 互联网 发布时间:2015-03-17
本文导语: | *进程的描述: 做为执行蓝本的同一段程序,可以被加载到系统的不同内存区域分别执行,形成不同的进程 *什么是 ClassLoader 在流行的商业化编程语言中,Java 语言由于在 Java 虚拟机 (JVM) 上运行而显得与众不...
|
*进程的描述:
做为执行蓝本的同一段程序,可以被加载到系统的不同内存区域分别执行,形成不同的进程
*什么是 ClassLoader
在流行的商业化编程语言中,Java 语言由于在 Java 虚拟机 (JVM) 上运行而显得与众不同。这意味着已编译的程序是一种特殊的、独立于平台的格式,并非依赖于它们所运行的机器。在很大程度上,这种格式不同于传统的可执行程序格式。
与 C 或 C++ 编写的程序不同,Java 程序并不是一个可执行文件,而是由许多独立的类文件组成,每一个文件对应于一个 Java 类。
此外,这些类文件并非立即全部都装入内存,而是根据程序需要装入内存。ClassLoader 是 JVM 中将类装入内存的那部分。
详见:http://www-900.ibm.com/developerWorks/education/java/j-classloader/tutorial/j-classloader-2-1.shtml
综述(个人见解):
进程是程序在内存中的不同拷贝(行业共识),而jvm是运行java程序的一个操作系统程序,一般的一个jvm运行一个java应用程序,所以可以说一个jvm进程启动一个java进程。
java class是在jvm进程执行时被ClassLoader装载志内存执行,class
做为执行蓝本的同一段程序,可以被加载到系统的不同内存区域分别执行,形成不同的进程
*什么是 ClassLoader
在流行的商业化编程语言中,Java 语言由于在 Java 虚拟机 (JVM) 上运行而显得与众不同。这意味着已编译的程序是一种特殊的、独立于平台的格式,并非依赖于它们所运行的机器。在很大程度上,这种格式不同于传统的可执行程序格式。
与 C 或 C++ 编写的程序不同,Java 程序并不是一个可执行文件,而是由许多独立的类文件组成,每一个文件对应于一个 Java 类。
此外,这些类文件并非立即全部都装入内存,而是根据程序需要装入内存。ClassLoader 是 JVM 中将类装入内存的那部分。
详见:http://www-900.ibm.com/developerWorks/education/java/j-classloader/tutorial/j-classloader-2-1.shtml
综述(个人见解):
进程是程序在内存中的不同拷贝(行业共识),而jvm是运行java程序的一个操作系统程序,一般的一个jvm运行一个java应用程序,所以可以说一个jvm进程启动一个java进程。
java class是在jvm进程执行时被ClassLoader装载志内存执行,class