![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
jvm
@ther
这个作者很懒,什么都没留下…
展开
-
一篇文章理解JMM(java 内存模型) 和 volatile的原理和使用
volatile 作为平时使用不多,但是面试时经常问的一个方面,作为java开发人员,不理解和说清楚这个东西的原理和机制,都不好意思找工作,那么怎么理解这个东西呢。说起这个关键字的性质,相信都是随口就来,voliatile能保证可见性和一致性,那么怎么理解呢,要理解这两点需要知道JMM1. java内存模型基础java内存模型(Java Memory Model,JMM)是java虚拟机规范...原创 2020-02-28 18:03:58 · 265 阅读 · 0 评论 -
java中偏向锁、轻量级、锁重量级锁由浅入深理解
在JDK1.6之后synchronized 的效率已经和JUC中的ReentenerLock效率相差无几,在深入理解java虚拟机中也有提到。那么jvm团队做了哪些优化呢?1.基础利用synchronized实现同步的基础:Java中的每一个对象都可以作为锁。具体表现 为以下3种形式。 ·对于普通同步方法,锁是当前实例对象。 ·对于静态同步方法,锁是当前类的Class对象。对于同步方法块...原创 2020-02-20 20:52:12 · 247 阅读 · 0 评论 -
jvm 内存结构初步理解
线程隔离区1.虚拟机栈:当方法运行时 会创建虚拟栈帧 存储局部变量表操作数栈,动态链接和方法出口,而初学者说的’堆栈’指的是栈中栈帧的局部变量表中的内容,会存放编译期可知的所有的基本数据类型,和对象类型的引用;2.本地方法栈:作用与虚拟机栈类似,但是是读取本地方法的;3.程序计数器:较小的内存空间,用于记录程序的行号;以便完成线程程序的执行程序是逐行执行的公共数据区1.堆区(he...原创 2018-10-13 15:49:04 · 141 阅读 · 0 评论 -
2020 年 初中级Java 面试题目大全
答案长期更新 有的懒得写 有的还不知道 如果有大神补充 可以评论或者私信 谢谢1. Java 基础1. JDK 和 JRE 有什么区别? A:JDK就是Java Development Kit,JRE就是Java Runtime Enviroment,JRE是个运行环境,JDK是个开发环境,如果你电脑安装了JDK,那么你不仅可以开发Java程序,也同时拥了运行Java程...原创 2019-06-28 13:34:02 · 1877 阅读 · 0 评论