首页 > 其他 > 详细

面试篇九:JVM

时间:2020-05-11 13:13:32      阅读:52      评论:0      收藏:0      [点我收藏+]
  • 1.JRE、JDK、JVM联系与区别

JRE:Java运行环境,包含JVM,用于解释执行Java的字节码文件。只安装 JRE(Java Runtime Environment)就可以运行 Java 程序。

JDK:包含JRE、JVM,Java标准开发包,它提供了编译、运行Java程序所需的各种工具和资源,包括Java编译器、Java运行时环境,以及常用的Java类库等。如需编译、调试程序,则需安装。

JVM:Java虚拟机,是java实现跨平台的最核心部分,负责解释执行字节码文件,是可运行java字节码文件的虚拟计算机。

  • 2.双亲委派模型

如果一个类加载器收到类加载的请求,它首先不会自己去尝试加载这个类,而是把这个请求委派给父类加载器完成。每个类加载器都是如此,只有当父加载器在自己的搜索范围内找不到指定的类时(即ClassNotFoundException),子加载器才会尝试自己去加载。

  • 3.说说你知道的几种主要的JVM参数
set JAVA_OPTS=%JAVA_OPTS% -Xms512m -Xmx2048m -XX:PermSize=256M -XX:MaxNewSize=256m -XX:MaxPermSize=512m

-Xms512m 堆的分配参数,堆的最小内存

-Xmx2048m 堆的分配参数,堆的最大内存,-Xmx -Xms,可以将JVM最大内存与初始内存设置相等,避免JVM垃圾回收后重新分配内存。

-XX:newSize:表示新生代初始内存的大小,应该小于-Xms的值;

-XX:MaxNewSize=256m表示新生代可被分配的内存的最大上限;当然这个值应该小于 -Xmx的值;

-XX:PermSize=256M表示非堆区初始内存分配大小,其缩写为permanent size(持久化内存)

-XX:MaxPermSize=512m表示对非堆区分配的内存的最大上限。

-XX:NewRatio=4 年轻代与年老代比例 = 1:4

面试篇九:JVM

原文:https://www.cnblogs.com/scorpio-cat/p/12868430.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!