![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
杨安平
这个作者很懒,什么都没留下…
展开
-
java时间的一些操作
获取两个日期之间所有的日期列表方法一:使用Date方式直接操作private static List<String> dateT(Date beginTime, Date endTime) { List<String> daysList = new ArrayList<String>(); DateFormat format = new ...原创 2019-11-06 20:36:41 · 137 阅读 · 0 评论 -
CAS和Unsafe分别是什么
从一个面试开始:CAS原理是什么我的回答是:数据做更改时会用一个递增的版本号判断数据是否发生过改变,如果已经发生过改变自旋直至到最新值然后变更;这里有两个地方我一直理解错误:1.版本号是自增的,所以我一直没理解为什么CAS会导致ABA问题2.CAS会自旋直至最新值做更新,所以一直疑问为什么要正确的答案在下面并没有递增的版本号,所以会导致ABA问题ABA问题:假如A、B...原创 2019-07-03 19:16:32 · 388 阅读 · 0 评论 -
java.util.concurrent.atomic分类
转载自:https://juejin.im/post/5aeec351518825670a103292#heading-2其余转载内容放在对应段落java.util.concrrent.atomic包分类原子更新基本类型 AtomicBoolean 以原子更新的方式更新boolean AtomicInteger 以原子更新的方式更新Integer Atomic...转载 2019-07-04 14:25:07 · 238 阅读 · 0 评论 -
两张表说清java内存区域划分
java内存区域概表//变量、常量、静态变量的区别String str = "abc";//变量final String str = "abc";//常量static String str = "abc";//静态变量java内存区域细分表关于并不是所有对象都在堆内存中分配的说明(参考https://cloud.tencent.com/developer/article/1...原创 2019-07-14 15:40:29 · 74 阅读 · 0 评论 -
Object经常被重写的三个方法
hasCode方法原创 2019-08-06 23:55:32 · 456 阅读 · 0 评论 -
java死锁&活锁&饥饿&无锁
死锁死锁的三种场景:线程死锁、线程池死锁、资源连接池死锁线程死锁:多个线程分别等待对方持有的锁,比如下面代码,线程Thread-1持有锁a并尝试获取锁b,Thread-2持有锁b并尝试获取锁a,导致两个线程都不能获取需要的锁@Testpublic void testLock1() throws InterruptedException { Object a = new Obje...原创 2019-08-15 09:44:11 · 296 阅读 · 0 评论