java虚拟机体系结构 方法区 堆 java虚拟机栈 本地方法栈
方法区 java虚拟机编译的class文件中二进制数据类型解析数据存在方法区中 是所有线程共享
和存在数据的线程安全问题 当二个线程使用同一类并且类还被加载 则让一个线程加载 另一个
线程等待
java虚拟机栈 是线程私有的 既决定了线程的个数 存放的变量 对象引用
堆 是所有线程所共享 存放的是所有的对象 涉及到多线程的并发 对象的引用 直接引用 使用句柄引用
直接内存不是java虚拟机的一部分 加快GC的垃圾回收 但直接内存出现内存溢出还难排除
java虚拟机的加载机制 双亲委派模式 根类加载器 扩展类加载器 应用类加载器 分支 用户自定义加载器 扩展类加载器 应用类加载器会先加载jdk的源码包 然后是用户自定义的包 比如java.lang.String自定义的类永远不会被加载
gc的垃圾收集算法
1.引用计数算法 确定不能处理循环引用的对象
2.标记清除算法 先将需要清除的标记出来然后进行清除 会产生很多的内存碎片
3.复制算法 先将内存分为2半 将需要清除的放入另一半中 浪费空间
4.标记整理算法 是结合了标记清除和复制算法的各自的优点 先将需要清除的标记并且整理在一旁
既不会浪费内存也不会产生内存碎片
5.分代收集算法 根据对象的不同生命周期采用不同的算法

转载于:https://www.cnblogs.com/wgj-master/p/10394734.html

面试之什么是java虚拟机相关推荐

  1. 如何在面试时搞定 Java 虚拟机?

    作者 | 倪升武 责编 | 胡巍巍 笔者最近抽空看了一点<深入理解Java虚拟机>,本篇文章主要来总结一下Java虚拟机内存的各个区域,以及这些区域的作用.服务对象以及其中可能产生的问题, ...

  2. java说影_面试被问到Java虚拟机,用这篇文章怼过去

    Jvm内存结构 Jvm内存结构,一般是面试官对Java虚拟机这块考察的第一问.讲真,还没背会,自己罚自己面壁思过. Java虚拟机的内存结构一般可以从线程共有和线程私有两部分起头作答,然后再详细说明各 ...

  3. 【面试必会】java虚拟机原理

    如何才可以进大厂? 答案其实也很简单,能力+学历.不知道大家有没有发现,大厂的一些部门对于学历要求已经放低了,阿里的一些部门同样也招大专学历的程序员,当然肯定也是因为他的能力足够出色. 对于准备秋招的 ...

  4. (一)JVM成神路之初识虚拟机 - 探寻Java虚拟机的前世今生之秘

    引言 JVM(Java Virtual Machine)Java虚拟机的概念大家都不陌生,Java之所以可以做到"一次编译,到处运行"的跨平台性,其根本原因就在于JVM.JVM是建 ...

  5. 《趣学编程》深入理解Java虚拟机

    哈喽!大家好,我是小奇,一位不靠谱的程序员 小奇打算以轻松幽默的对话方式来分享一些技术,如果你觉得通过小奇的文章学到了东西,那就给小奇一个赞吧 文章持续更新,可以微信搜索[小奇JAVA面试]第一时间阅 ...

  6. 虚拟机的分类_「面试必备」Java虚拟机知识点复习手册(下)

    关注我的微信公众号:后端技术漫谈 不定期推送关于后端开发.爬虫.算法题.数据结构方面的原创技术文章,以及生活中的逸闻趣事. 我目前是一名后端开发工程师.主要关注后端开发,数据安全,网络爬虫,物联网,边 ...

  7. java上机面试题 039_深入 Java 虚拟机之面试总结篇

    在学习 JVM 相关知识,怎么让自己有动力看下去,且有思考性呢?笔者认为,开头用一些常用的面试题,来引入读者的兴趣比较好,这样才会有看下去的动力.所以,该篇文章会以面试+总结的方式,希望读者能先思考写 ...

  8. 深入理解java虚拟机 - jvm高级特性与最佳实践(第三版)_JVM虚拟机面试指南:年薪30W以上高薪岗位需求的JVM,你必须要懂!...

    JVM的重要性 很多人对于为什么要学JVM这个问题,他们的答案都是:因为面试.无论什么级别的Java从业者,JVM都是进阶时必须迈过的坎.不管是工作还是面试中,JVM都是必考题.如果不懂JVM的话,薪 ...

  9. 为什么虚拟机上一运行就显示程序停止_五分钟学Java:如何学习Java面试必考的JVM虚拟机...

    原创声明 本文首发于微信公众号[程序员黄小斜] 本文作者:黄小斜 转载请务必在文章开头注明出处和作者. 本文思维导图 为什么要学习JVM虚拟机 最近的你有没有参加Java面试呢?你有没有发现,Java ...

最新文章

  1. 图解电商支付架构设计,这才是真电商!
  2. mysql8 2058_SQLyog连接MySQL8.0及以上版本出现2058错误解决方案
  3. 经桥科技与湖南文化艺术产业集团合力打造“网乐潇湘”
  4. 一个很好的自学网站~推荐一下
  5. Android设计模式之——策略模式
  6. 腾讯首度披露基础架构演进史:“海量之道”进化“生而为云”
  7. Oracle笔记:备份还原
  8. 值得思考,机器学习模型做出的决策是你想要的吗?
  9. 像目标主机一样的tcp流重组
  10. python编程(一种自定义定时器的写法)
  11. android windows 虚拟机下载,windows10虚拟机安卓版
  12. win10下如何检测快捷键被被哪个进程占用
  13. 什么是TPS、QPS?
  14. 伊诺伊香槟分校计算机世界排名,2020年伊利诺伊大学香槟分校QS世界排名
  15. ASEMI的MOS管9N90参数,9N90电路图,9N90实物图
  16. AD19 DRC 时弹出 Design contains shelved or modified (but not repoured) polygons
  17. 抖音服务器到底有多大,能够供那么多人同时刷?
  18. 用于针对DNN中后门攻击的蒸馏对策和中毒数据的去除
  19. 5G WiFi的信号难题:穿墙性能太差
  20. $route和$router的区别

热门文章

  1. 【开源程序(C++)】获取bing图片并自动设置为电脑桌面背景
  2. [Codeforces Round #165 (Div. 2)]D. Greenhouse Effect
  3. setCharacterEncoding和setContentType
  4. C#中理解接口以及接口的作用
  5. 6.java 代码块
  6. Maven--资源文件resource的问题
  7. eclipse导入class文件
  8. 最近处理的几个小问题_20160311
  9. OpenSSL以及私有CA的搭建
  10. PLSQL Developer远程连接oracle数据库