美文网首页
JVM 基础篇

JVM 基础篇

作者: 康俊1024 | 来源:发表于2019-04-02 22:50 被阅读0次

什么是JVM

Write Once Run Everywhere

  1. 软件层面机器码翻译( .class ====> 1 2 1 2 )
  2. 内存管理

为什么学习JVM

出现内存溢出,内存泄漏我们是一无所知的,so

运行时数据区

代码分类:数据 指令 控制

程序计数器:

指向当前线程正在执行的字节码指令的地址 行号。why 线程被挂起再次运行时,通过程序计数器指向的地址 continue。

虚拟机栈:

存储当前线程运行方法所需要的数据 指令 返回地址。why 最小执行单元线程是做事情的,怎么做由人控制
虚拟机栈存储单元:栈帧(方法)

栈帧:
局部变量表:

编译期就知道大小的区块,定长的。32位

操作数栈:

字节码文件反编译:javap -c -v xxx.class > p.txt

动态链接:

接口注入,运行时指向真正的实例。常量池(元数据信息,final常量,String)

出口:

返回地址,出栈。

本地方法栈:

方法区:

类信息
常量
静态变量
JIT

heap:

内存模型:

对象的生命周期不一样 ==>分代

Meta Space

为了解决永久代溢出的问题,类似ArrayList可扩容。

新生代

老年代

相关文章

  • Java工程师成神之路

    基础篇进阶篇高级篇架构篇扩展篇推荐书籍 基础篇 一、基础篇JVM JVM内存结构 堆、栈、方法区、直接内存、堆和栈...

  • Java大佬之学习历程(一)

    基础篇 JVM: ①JVM内存结构: 堆、栈、方法区、直接内存、堆和栈区别, ②JVM参数及...

  • 2020-04-03 JVM垃圾回收相关文章引用

    这三篇文章总结的非常到位,收藏在这里。 Jvm垃圾回收器(基础篇) Jvm垃圾回收器(算法篇) Jvm垃圾回收器(...

  • JVM(基础篇)

    写在前面 上周老大给安排几个面试的任务,我一般问两方面: 项目经验中解决过的比较有意思的问题又哪些? HashMa...

  • JVM 基础篇

    什么是JVM Write Once Run Everywhere 软件层面机器码翻译( .class ====>...

  • Java工程师成神之路

    To Be Top Javaer - Java工程师成神之路 一、基础篇 JVM JVM内存结构 堆、栈、方法区、...

  • Java工程师成神之路

    一、基础篇JVM JVM内存结构 堆、栈、方法区、直接内存、堆和栈区别 https://blog.csdn.net...

  • Java 工程师成神之路(2018 年修订版)

    基础篇 1.1 JVM JVM内存结构 堆、栈、方法区、直接内存、堆和栈区别。 Java内存模型 内存可见性、重排...

  • JVM实战优化篇

    在前文《JVM原理解惑篇》中已经梳理了主要的JVM的理论基础:Java程序运行在Java虚拟机之上,JVM管理了整...

  • JVM实战优化篇

    在前文《JVM原理解惑篇》中已经梳理了主要的JVM的理论基础:Java程序运行在Java虚拟机之上,JVM管理了整...

网友评论

      本文标题:JVM 基础篇

      本文链接:https://www.haomeiwen.com/subject/aocibqtx.html