首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Java
订阅
OoLukeoO
更多收藏集
微信扫码分享
微信
新浪微博
QQ
22篇文章 · 0订阅
Java 多线程学习(3) CAS 底层原理学习之我是如何从 Java 源码看到 openjdk 源码再到汇编码、intel 手册的
本来是准备阅读 j.u.c 包下 ConcurrentHashMap 的底层源码,理解 ConcurrentHashMap 的实现原理的,看了一点点发现里面用到了很多 CAS。并且 atomic 和 locks 这两个包中也大量使用了 CAS,所以就先把 CAS 的原理搞清楚了…
Spring Boot中如何干掉if else
看到crossoverJie的文章《利用策略模式优化过多 if else 代码》后受到启发,可以利用策略模式简化过多的if else代码,文章中提到可以通过扫描实现处理器的自注册,我在这里介绍在Spring Boot框架中的实现方法。 这里虚拟一个业务需求,让大家容易理解。假设…
面试必备:ThreadLocal原理解析[精品长文]
ThreadLocal提供了一种访问某个变量的特殊方式:访问到的变量属于当前线程,即保证每个线程的变量不一样,而同一个线程在任何地方拿到的变量都是一致的,这就是所谓的线程隔离。 如果要使用ThreadLocal,通常定义为private static类型,在我看来最好是定义为p…
挑战10个最难回答的Java面试题(附答案)
1. SpringBoot内容聚合 2. 面试题内容聚合 3. 设计模式内容聚合 4. Mybatis内容聚合 5. 多线程内容聚合 这是我收集的10个最棘手的Java面试问题列表。这些问题主要来自 Java 核心部分 ,不涉及 Java EE 相关问题。你可能知道这些棘手的 …
java一行代码打印心形
之前看到Python一行代码就可以在控制台打印心形,感觉非常神奇,昨天突然想起来其实java应该也是可以的,在stream加持执行下,分享代码如下:欢迎有兴趣的童鞋一起交流
搞定 CompletableFuture,并发异步编程和编写串行程序还有什么区别?你们要的多图长文
对于 Java 后端的同学,在 Java1.8 之前想实现异步编程,还想避开上述这些烦恼,ReactiveX 应该是一个常见解决方案(做Android 的应该会有了解)。如果熟悉前端同学, ES6 Promise(男朋友的承诺)也解决了异步编程的烦恼 天下语言都在彼此借鉴相应优…
利用策略模式优化过多 if else 代码
不出意外,这应该是年前最后一次分享,本次来一点实际开发中会用到的小技巧。 条件少还好,一旦 else if 过多这里的逻辑将会比较混乱,并很容易出错。 刚开始条件较少,也就没管那么多直接写的;现在功能多了导致每次新增一个 else 条件我都得仔细核对,生怕影响之前的逻辑。 最后…
面试必备:Java 原子操作的实现原理[精品长文]
原子(atomic)本意是“不能被进一步分割的最小粒子”,而原子操作(atomic operation)意为“不可被中断的一个或一系列操作”。在多处理器上实现原子操作就变得有点复杂。让我们一起来聊一聊在Intel处理器和Java里是如何实现原子操作的。 32位IA-32处理器使…
一图搞定JVM面试之垃圾回收器
求你了,再问你Java内存模型的时候别再给我讲堆栈方法区了…
Java内存模型由几部分组成,堆、本地方法栈、虚拟机栈、方法区... 每一次我不想打断他们的话,虽然我知道这又是一个误会了我的问题的朋友。 其实,我想问的Java内存模型,是和并发编程有关的。而候选人给我回答的那叫JVM内存结构,完全是两回事。 很多时候,在我没有打断他们的情况…