做旅游产品的网站有哪些,代挂网站维护,长沙网站到首页排名,什么语言做网站文章目录 JVM的作用是什么双亲委派机制加载流程 JVM的作用是什么
我们运行Java程序时#xff0c;要安装JDK#xff0c;JDK包含JVM#xff0c;不同环境的JDK都是不同的。
Java 代码在编译后会形成 class 的字节码文件#xff0c;该字节码文件通过 JVM 解释器#xff0c;生… 文章目录 JVM的作用是什么双亲委派机制加载流程 JVM的作用是什么
我们运行Java程序时要安装JDKJDK包含JVM不同环境的JDK都是不同的。
Java 代码在编译后会形成 class 的字节码文件该字节码文件通过 JVM 解释器生成特定系统的机器指令。从而实现跨平台运行
也正是“一次编译到处运行”
下面我们讲一讲类的双亲委派机制
双亲委派机制
当收到类加载的请求时该类的加载器会将请求发送给其父类加载器直至根加载器当父类加载器加载不了的话就会自己尝试加载。
使用双亲委派机制是防止重复加载两次字节码。确保只有一个字节码加载。
类加载器
类加载器主要分为
根加载器 Bootstrap ClassLoad一般加载Java核心库扩展****类加载器 Extension ClassLoad一般加载Java扩展包应用程序类加载器 Application ClassLoad加载 classPath下的应用程序类自定义加载器 Customer ClassLoad
一般 Java 的本地方法类由根加载器加载扩展类Java的扩展目录通常是jre/lib/ext由扩展类加载器加载classPath 下的所有类都由应用程序类加载器。
java.util.ArrayList这个类也是Java核心库的一部分由根加载器加载。javax.swing.JFrame这个类属于Java的扩展包由扩展加载器ExtClassLoader加载。com.example.MyClass这是一个假设的应用程序类它位于应用程序的类路径上由系统加载器AppClassLoader加载。
加载流程 使用双亲委派机制的好处
1、可以避免类的重复加载当父类加载器已经加载了该类时就没有必要子类加载器 再加载一次。
2、考虑到安全因素java核心api中定义类型不会被随意替换假设通过网络传递一个名为java.lang.Object的类通过双亲委托模式传递到启动类加载器而启动类加载器在根加载器发现这个名字的类发现该类已被加载并不会重新加载网络传递的过来的java.lang.Object而直接返回已加载过的Object.class这样便可以防止核心API库被随意篡改。
lang.Object而直接返回已加载过的Object.class这样便可以防止核心API库被随意篡改。 我是小辉24 届毕业生。当下是找工作ing欢迎关注持续分享。