jvm
文章平均质量分 84
浦江之猿
阶段性的制定目标,阶段性的突破自己!一直在制定,一直在突破,一直在坚持,从来未放弃!
展开
-
浅淡java类加载机制
本人学java出身,但说起来惭愧,对java的底层却不是很了解,比方说一会儿要淡到的类加载机制。大家在运行java程序的时候有没有想过,这个程序是怎么运行的。也许有得朋友会说,先编译成字节码,然后再加载到内存运行。不错,确实是这样,那新问题又来了,到底是怎么加载的。这里就会涉及到java的类加载机制。理解类加载机制,可以在程序运行的过程中动态的加载相应的类,从而提高程序的灵活性和适应性。原创 2015-09-25 14:04:22 · 367 阅读 · 2 评论 -
DCL之单例模式
Double Check Lock原创 2021-02-25 21:38:12 · 9631 阅读 · 16 评论 -
由浅入深了解JVM-程序计数器
1,作用,指的是当前行2,存的是一个地址,不是整数值,但可以理解成一个是一个行号,即3,为什么要有程序计数器原创 2021-02-21 15:05:50 · 537 阅读 · 11 评论 -
由浅入深了解JVM-堆
jvm中堆主要是用来存放对像,并且作为jvm中最大的一块,因此垃圾回收时主要作用于堆,因为堆也被称作GC堆。关于垃圾回收,从两个角度去思考:什么样的对象被当作垃圾来处理?如何去处理?在考虑这两个问题之前...原创 2021-02-17 18:45:46 · 1109 阅读 · 7 评论 -
由浅入深了解JVM-内存结构
前言作为一名java工程师,无论如何都得对JVM有一定的了解,如果在互联网公司,尤其像BATM这样的大厂,如果想在技术上有一定的造诣那么对JVM就得有非常深入的了解,但作为一名普通的java工程师个人觉得最起码需要知道JVM内存结构(运行时数据区)由哪些模块组成,以及每个模块的作用。这里笔者是这样记得:三黄两绿,即五个模块。黄表示是线程私有的,只有自己能看的见。绿表示是大家都能用的,共享的。配合下图以及这四个字,JVM的内存结构就算掌握了。结构功能...原创 2021-02-15 20:39:06 · 2726 阅读 · 5 评论 -
由浅入深了解JVM-虚拟机栈
虚拟机栈是JVM内存结构中线程私有的模块之一,特性是先进后出,这个特性决定了方法的调用过程都在栈中进行。每调用一个方法在栈中就会生成一个此方法对应的栈帧,栈帧中包括四个部分局部变量表、操作数栈、动态连接和方法返回地址。当一个栈的内存不足以容纳足够的栈帧时,即所谓的栈尝试大于虚拟所允许的深度时就会抛出StackOverFlowError异常。当对栈进行扩展遇到JVM内存不足时会抛出OutOfMemoryError异常。栈的结构如下图所示:下面通过一段代码介绍虚拟机栈的工作原理jvm指令手册通过class原创 2021-02-21 03:24:07 · 1569 阅读 · 20 评论