java基础
文章平均质量分 73
weixin_50220593
这个作者很懒,什么都没留下…
展开
-
Java实现对栈的操作
Java实现对栈的操作原创 2022-03-18 14:20:46 · 281 阅读 · 0 评论 -
事务
1、首先什么是事务? 事务(Transaction)是并发控制单位,是用户定义的一个操作序列,这些操作要么都做,要么都不做,是一个不可分割的工作单位。 事务通常以BEGIN TRANSACTION开始,以COMMIT或ROLLBACK结束。 2、事务的 ACID又是什么? 事务中的所有操作要么全部执行,要么都不执行; 如果事务没有原子性的保证,那么在发生系统 故障的情况下,数据库就有可能处于不一致状态。 因而,事务的原子性与一致性是密切相关的。 如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四原创 2021-04-26 22:20:37 · 60 阅读 · 0 评论 -
hashMap
1:HashMap 的数据结构? A:哈希表结构(链表散列:数组+链表)实现,结合数组和链表的优点。当链表长度超过 8 时,链表转换为红黑树。 transient Node<K,V>[] table; 2:HashMap 的工作原理? HashMap 底层是 hash 数组和单向链表实现,数组中的每个元素都是链表,由 Node 内部类(实现 Map.Entry<K,V>接口)实现,HashMap 通过 put & get 方法存储和获取。 存储对象时,将 K/V 键值传给 p原创 2021-04-22 08:57:34 · 100 阅读 · 0 评论 -
synchronized与lock的区别
一.synchronized的缺陷 synchronized是java中的一个关键字,也就是说是Java语言内置的特性。那么为什么会出现Lock呢? 在上面一篇文章中,我们了解到如果一个代码块被synchronized修饰了,当一个线程获取了对应的锁,并执行该代码块时,其他线程便只能一直等待,等待获取锁的线程释放锁,而这里获取锁的线程释放锁只会有两种情况: 1)获取锁的线程执行完了该代码块,然后线程释放对锁的占有; 2)线程执行发生异常,此时JVM会让线程自动释放锁。 那么如果这个获取锁的线程由于要等待转载 2021-04-19 22:47:44 · 107 阅读 · 0 评论