大家好,自从上次讲了软考课程之后,本仙女受到了社会各界的一致好评。本仙女怀着用毕生所学回报社会的热忱,打算花大手笔进行JVM的讲解。

首先,对以上的四部分进行解释。

(1)自动内存管理讲的是java运行时数据区里的部分,分为内存划分和垃圾收集器。
(2)执行子系统讲的是画红圈的三部分:类文件结构、类加载机制、字节码执行引擎。
(3)优化分别为编译期优化和运行期优化。
(4)并发讲的是虚拟机是如何实现多线程的。

具体可结合下面的JVM结构图来看。这张图是基于JDK7的。JDK7以前,常量池是存放在方法区的。从JDK7以后,常量池放到了堆中。

其次,我们来看一下本系列博客的目录。

小仙女讲JVM(1)—综述

小仙女讲JVM(2)—内存的划分
小仙女讲JVM(3)—垃圾收集机制

小仙女讲JVM(4)—类文件结构
小仙女讲JVM(5)—类加载机制
小仙女讲JVM(6)—执行引擎

小仙女讲JVM(7)—JVM优化

小仙女讲JVM(8)—高效并发

再次,我们温习一下JVM的概念。

我们来看看JVM是什么,为什么有JVM。
JVM是java虚拟机(Java Virtual Machine),其实现了“一次编译,处处运行”的功能。如果没有JVM,我们编写java代码时,如果想在Windows平台上运行,那就需要编写一套适用于Windows平台的。如果想在linux平台上运行,则编写一套linux的。

如果类比到现实,.java就是面粉,.class就是和好的面团,jvm就是一个个的模子,把同样的面团刻画出不同样子的小馒头。

最后,来个文末备注。

  1. 本仙女乃一介女子,所讲皆是自己的理解,有啥不妥之处还请看客指出来,咱们一起成长。
  2. 感谢这本书的作者的极力相助。【好吧,这句话的意思是我主要是参考的这本书】

小仙女讲JVM(1)—综述相关推荐

  1. 小仙女讲InnoDB(6)——综述

    时光匆匆呀,一晃,竟然到了8月中旬ღ( ´・ᴗ・` ).<小仙女讲InnoDB>也更新完了,欢迎大家的参观~ MySQL的概念 数据库是物理操作系统文件或其它形式文件类型的集合,mysql ...

  2. 经典面试题 | 讲一讲JVM的组成

    来源:王磊的博客 JVM(Java 虚拟机)算是面试必问的问题的了,而但凡问 JVM 一定会问的第一个问题就是:讲一讲 JVM 的组成?那本文就注重讲一下 JVM 的组成. 首先来说 JVM 的组成分 ...

  3. 经典面试题|讲一讲JVM的组成

    JVM(Java 虚拟机)算是面试必问的问题的了,而但凡问 JVM 一定会问的第一个问题就是:讲一讲 JVM 的组成?那本文就注重讲一下 JVM 的组成. 首先来说 JVM 的组成分为,整体组成部分和 ...

  4. java direct memory_第一讲  JVM内存四大类型:Heap,Stack,Contant,DirectMemory等

    第一讲JVM内存四大类型:Heap,Stack,Contant,DirectMemory等 Stack属于栈的区域,属于每条线程私有的. 方法区和本地方法栈有很大的不同,方法区是用Java级别角度做的 ...

  5. java面试题jvm_经典面试题|讲一讲JVM的组成

    经典面试题|讲一讲JVM的组成 发布时间:2019-04-10 09:01, 浏览次数:1456 , 标签: JVM JVM(Java 虚拟机)算是面试必问的问题的了,而但凡问 JVM 一定会问的第一 ...

  6. 欧尼酱讲JVM(01)——整体概览(导航)

    从业这么久了,输入了很多东西,趁我还算不老,趁我还有精力,我觉得把我的知识和经验整理一番,输出出来. 那么首先就从JVM开始吧.我将从以下几个方面讲解JVM: 欧尼酱讲JVM(02)--类的加载过程 ...

  7. 欧尼酱讲JVM(22)——分代收集算法

    目录 分代收集算法 HotSpot中的分代收集 年轻代 老年代 没有一种最好的算法吗?没有,没有最好只有最适合.具体问题具体分析! 上一篇文章<欧尼酱讲JVM(21)--垃圾回收相关算法> ...

  8. java的标量和聚合量_欧尼酱讲JVM(16)——如何基于逃逸分析进行代码优化

    代码优化是一个涉及面很广的"工程",但是今天呢,本姑娘主要给大家分享基于逃逸分析,如何给代码做优化.那么逃逸分析是什么呢?我前面的文章也仔细的讲解过了,这里就不过多的赘述了.有不明 ...

  9. 欧尼酱讲JVM(17)——方法区详解有图有真相

    目录 位置图解 方法区的理解 方法区在哪里 方法区的基本理解 HotSpot中方法区的理解(演进过程) 方法区的内部结构 图解方法区内部结构 运行时常量池 class文件中常量池的理解 为什么需要常量 ...

最新文章

  1. 动态规划4--最佳加法表达式
  2. eclipse运行时不自动保存的解决方法
  3. 润乾报表与DERBY数据库的创建连接详解
  4. 1028 人口普查 (20 分)(c语言)
  5. HDU - 4280 Island Transport(最大流)
  6. MyBatis的association示例
  7. VMware虚拟机克隆CentOS后网卡修改方法
  8. 让我们的标签语义化成为一种习惯好处多多
  9. 前端学习(2034)vue之电商管理系统电商系统之绘制图表
  10. kali linux查看网卡_CentOS7.6安装无线网卡驱动|Linux如何安装网卡驱动|Linux如何让配置网卡...
  11. python气象_Python 在气象上的应用
  12. linux 下测速时间分析
  13. Spring boot常见标签、注解解释
  14. CSDN《程序员》杂志创始人蒋涛-推荐《程序员职场第一课》
  15. AX2012:导出指定的数据到Excel
  16. magicbook java开发,买前必看,荣耀MagicBook和华为MateBook D(2018版)哪个更适合你?
  17. SSH2.0编程 ssh协议过程实现(转)
  18. 鼠标经过文字显示隐藏图片css样式
  19. 编解码(1)之基本像素格式转换
  20. 海驾学车过程全揭秘——第六篇:辛苦的学车全过程

热门文章

  1. Vue-5 路由参数的传递和获取(query 和 params),导航守卫和路由元信息,History模式
  2. 无线上外网,有线上内网的方式
  3. C#事件中sender的小用法
  4. 《OpenSSL3.0学习之七 OpenSSL FIPS 提供程序|CSDN创作打卡》
  5. 用css伪元素制作箭头图标
  6. 怎样识别app网站服务器在国外,APP服务器你了解多少?什么是海外app服务器
  7. python多个if_Python之条件判断/if嵌套/如何写嵌套代码
  8. 检测报告上CNAS、CMA资质含义及联系
  9. 微搭低代码小程序模板体验
  10. 利用ajax实现excel报表导出(解决乱码问题)