![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA中的一些机制
文章平均质量分 79
凯瑟Kaiser
这个作者很懒,什么都没留下…
展开
-
有了锁,再也不用害怕多线程不安全了
引入了线程之后,线程安全问题随之而来,所以就有了锁的概念,引入锁之后又有了锁的升级,锁的分类,下面就让我们详细了解锁;一、锁的分类1、乐观锁乐观锁即表达一种乐观思想,认为读多写少,遇到并发写的情况可能性低,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,采取在写时先读出当前版本号,然后加锁操作。java中的乐观锁基本都是通过CAS实现操作实现的,CAS是一种更新的原子操作(比较当前值跟传入值是否一样,一样则更新,否则失败)。2、悲..原创 2021-06-14 23:25:07 · 133 阅读 · 0 评论 -
JVM垃圾收集机制
**Java 堆从 GC 的角度还可以细分为: 新生代( Eden 区 、 From Survivor 区 和 To Survivor 区 )和老年代。**1. 新生代是用来存放新生的对象。一般占据堆的1/3空间。由于频繁创建对象,所以新生代会频繁触发MinorGC 进行垃圾回收。新生代又分为 Eden 区、ServivorFrom、ServivorTo 三个区。1.1 Eden 区Java新对象的出生地(如果新创建的对象占用内存很大,则直接分配到老年代)。当Eden区内存不够的时候就会触发原创 2021-04-25 09:32:34 · 104 阅读 · 0 评论 -
类加载机制及类加载器
我们都知道java中类有很多,所有的类并不是一开始就放入了虚拟机中,只有当需要用到它的时候,系统才会去调用它,所以才用到了类加载器,这是一个动态的过程,除了动态加载类以外,还会动态初始化类,对类进行动态链接。一、类加载器java中有三种类加载器。每个类加载器在创建的时候已经指定他们对应的目录, 也就是说每个类加载器去哪里加载类是确定的,下面是三种类加载器和他们对应的路径:1.BootStrapClassLoader(根类加载器),用来加载JRE/lib/rt.jar中的类,java的核心类,用原生代原创 2021-03-12 11:23:43 · 223 阅读 · 0 评论 -
千万别小看这个机制
一、前言在学习Java的过程中,为了得到某些信息,需要采取一定的手段,运用某种技术去获取,这种技术就是所谓的机制。在学习过程中,我们应该也有体会,只不过没有去深度挖掘,那么Java中都有哪些机制呢?接下来就跟大家聊一聊反射机制。二、Java中的反射机制1.反射的定义当程序在运行时,对于任意一个类,可以知道它的属性和方法;对于任意一个对象来说,可以调用它的方法和属性,这种动态获取信息和调用对象的方法的功能就称之为反射。其实我们反过来想一想,对象是如何创建的,无非就是那四种方法:(1)通过关键字ne原创 2020-12-30 10:00:46 · 102 阅读 · 0 评论