首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Java基础
订阅
德罗巴
更多收藏集
微信扫码分享
微信
新浪微博
QQ
12篇文章 · 0订阅
AQS解析与实战
前段时间在面试,发现面试官都有问到同步器AQS的相关问题。AQS为Java中几乎所有的锁和同步器提供一个基础框架,派生出如ReentrantLock、Semaphore、CountDownLatch等AQS全家桶。本文基于AQS原理的几个核心点,谈谈对AbstractQueue…
二叉树遍历Java(递归+迭代):前序、中序和后续遍历(双栈法+Deque法)
核心思维模型:对于二叉树的遍历,首先要将 Base Case 具体化出来,最底层的子节点不是没有左、右两个子节点,应该将其左、右两个子节点用 null 表示出来。即最底层子节点的左、右子节点都是 null。 在每次递归遍历中,该子节点相对于本次遍历都是一个根节点,它的左右子节点…
Java集合——TreeMap(一)
TreeMap底层是红黑树,在java8 HashMap也引入了红黑树,那么什么是红黑树?红黑树是一种二叉搜索树,它在每个结点上增加了一个存储位来表示结点的颜色,可以是RED或BLACK。通过对任何一条从根到叶子的简单路径上各个结点的颜色进行约束,红黑树确保没有一条路径会比其他…
java的强引用、软引用、弱引用、幻象引用,引用队列总结
java除了原始数据类型的变量,其他所有都是引用类型。 强引用:形如Object object = new Object();这样就是典型的强引用,被强引用引用的对象不会被垃圾收集器主动回收,JVM宁愿抛出OutOfMemoryError运行时错误(OOM),使程序异常终止,也…
并发容器之ThreadLocal
1. ThreadLocal 的简介 在多线程编程中通常解决线程安全的问题我们会利用 synchronzed 或者 lock 控制线程对临界区资源的同步顺序从而解决线程安全的问题,但是这种加锁的方式会让未获取到锁的线程进行阻塞等待,很显然这种方式的时间效率并不是很好。线程安全问…
说说Java里的equals(中)- Java那些事儿
想必大家看到类似的代码开始怀疑笔者是不是又挖坑让大伙跳了吧,来看一下结果。 没错,有坑,同样是对象,都是放到了set中,一个打印size()是1,另一个打印size()是2。在面向对象 - Java那些事儿 一文中,我们在Person这个类,虽然写了一个isSame()方法来判…
细说equals()方法和hashCode()方法
对于这两个方法的研究,源于一道比较经典的面试题:“x.equals(y)==true;x,y可有不同的hashcode对吗?”,其实这道题的关键在于考我们对equals()方法和hashCode()方法的理解,网上看了不少文章,有说对的,也有说不对的。在我看来对也不对,具体原因…
为什么阿里巴巴禁止使用BigDecimal的equals方法做等值比较?
BigDecimal,相信对于很多人来说都不陌生,很多人都知道他的用法,这是一种java.math包中提供的一种可以用来进行精确运算的类型。 很多人都知道,在进行金额表示、金额计算等场景,不能使用double、float等类型,而是要使用对精度支持的更好的BigDecimal。…
Java中的线程与线程池——线程池篇
简单来说,线程池是指提前创建若干个线程,当有任务需要处理时,线程池里的线程就会处理任务,处理完成后的线程并不会被销毁,而是继续等待下一个任务。由于创建和销毁线程都是消耗系统资源的,所以,当某个业务需要频繁进行线程的创建和销毁时,就可以考虑使用线程池来提高系统的性能啦。 降低资源…
线程篇2:[- sleep、wait、notify、join、yield -]
2. 结果分析:注02:29代表当前时刻的分秒,即2分29秒