![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
文章平均质量分 85
极世界
这个作者很懒,什么都没留下…
展开
-
jvm——双亲委派机制、jvm分区、垃圾回收算法
在发生GC时,需要回收的对象特别多,存活的特别少,因此需要搬移到另一块内存的对象非常少,所以不需要11划分内存空间。但不能保证每次存活的对象就永远少于新生代整体的10%,此时复制过去是存不下的,因此这里会用到另一块内存,称为老年代,进行分配担保,将对象存储到老年代。当前大多商用虚拟机都采用这种分代收集算法,这个算法并没有新的内容,只是根据对象的存活的时间的长短,将内存分为了新生代和老年代,这样就可以针对不同的区域,采取对应的算法。整理让存活的对象,向内存的一端移动,然后直接清理掉没有用的内存。...原创 2022-07-17 15:50:46 · 1254 阅读 · 0 评论 -
java内存模型——JMM理解
JMM是一种java内存模型,是一种不存在的概念和约定。JMM有以下约定: 1.线程解锁前,必须把共享变量刷回主存。 2.线程加锁前必须读取主存中的值到工作内存中。 3.加锁和解锁必须是同一把锁。JMM模型示意图: lock(锁定):把一个变量标记为一条线程独占状态 unlock(解锁):把一个处于锁定状态的变量释放出来,释放后的变量才可以被其他线程锁定 read(读取):把主内存中的一个变量读取传输到线程的工作内存,以便随后load动作使用 load(加载):把read到线程工作内存的变量放入工作内存的变原创 2022-07-08 20:31:57 · 1288 阅读 · 0 评论 -
java集合类构造及原理
Java集合主要分为Collection和Map两个接口;Collection又分别被List和Set继承;List被AbstractList实现,然后分为3个子类,ArrayList,LinkList和VectorList;Set被AbstractSet实现,又分为2个子类,HashSet和TreeSet;Map被AbstractMap实现,又分为2个子类,HashMap和TreeMap;Map被Hashtable实现。(1)相同点:LinkedeList和ArrayList都实现了List接口。 Arr原创 2022-06-14 16:51:59 · 1265 阅读 · 0 评论