虚拟机
zl1zl2zl3
这个作者很懒,什么都没留下…
展开
-
Java 编译期与运行期,别傻傻分不清楚!
来源:小小木的博客www.cnblogs.com/wyc1994666/p/11366802.html不知大家有没有思考过,当我们使用IDE写了一个Demo类,并执行main函数打印 hello world时都经历了哪些流程么?想通过这篇文章来分析分析Java的执行流程,或者换句话说想聊聊Java的编译期与运行期的流程。 开门见山 编译期间都做了什么 运行期间都做了什么 1. 开门见山publicclassMyApp{publi...转载 2020-07-18 11:22:15 · 1412 阅读 · 0 评论 -
你写的 Java 代码是如何一步步输出结果的
对于任何一门语言,要想达到精通的水平,研究它的执行原理(或者叫底层机制)不失为一种良好的方式。在本篇文章中,将重点研究java源代码的执行原理,即从程序员编写JAVA源代码,到最终形成产品,在整个过程中,都经历了什么?每一步又是怎么执行的?执行原理又是什么?一 编写java源程序java源文件:指存储java源码的文件。先来看看如下代码://MyTest被public修饰...转载 2019-12-18 17:42:33 · 272 阅读 · 0 评论 -
Java 运行时的内存划分
Java 运行时的内存划分程序计数器记录当前线程所执行的字节码行号,用于获取下一条执行的字节码。当多线程运行时,每个线程切换后需要知道上一次所运行的状态、位置。由此也可以看出程序计数器是每个线程私有的。虚拟机栈虚拟机栈由一个一个的栈帧组成,栈帧是在每一个方法调用时产生的。每一个栈帧由局部变量区、操作数栈等组成。每创建一个栈帧压栈,当一个方法执行完毕之后则出栈。如果...转载 2018-08-30 08:58:24 · 308 阅读 · 0 评论 -
Java虚拟机的Heap监狱
作者:刘欣来源:码农翻身在Java虚拟机中,我是一个位高权重的大管家,他们都很怕我,尤其是那些Java 对象,我把他们圈到一个叫做Heap的“监狱”里,严格管理,生杀大权尽在掌握。中国人把Stack翻译成“栈”,把Heap翻译成“堆”, 还有人会把Stack翻译成“堆栈”,唉,真不知道他们是怎么想的, 不过这么多年都过来了,你们明白就好。碰巧我会对Heap中的Java 对象...转载 2019-04-03 10:51:34 · 187 阅读 · 0 评论 -
4 个关于Java 虚拟机内存的问题?
JVM的内存区域是怎么划分的?JVM的内存划分中,有部分区域是线程私有的,有部分是属于整个JVM进程;有些区域会抛出OOM异常,有些则不会,了解JVM的内存区域划分以及特征,是定位线上内存问题的基础。那么JVM内存区域是怎么划分的呢?首先是程序计数器(Program Counter Register),在JVM规范中,每个线程都有自己的程序计数器。这是一块比较小的内存空间,存储当前线程正在...转载 2019-05-17 14:07:36 · 1290 阅读 · 0 评论