JDK核心JAVA源码解析(9) - hashcode 方法
本文基于 OpenJDK 11, HotSpot 虚拟机 在开发过程中我们可能会经常接触到hashcode这个方法来生成哈希码,那么底层是如何实现的?使用时有何注意点呢?hashcode() 方法底层实现hashcode()是Object的方法:@HotSpotIntrinsicCandidate public native int hashCode();它是一个native的方法,并且...

JDK核心JAVA源码解析(8) - 自动封箱拆箱与效率的思考
想写这个系列很久了,对自己也是个总结与提高。原来在学JAVA时,那些JAVA入门书籍会告诉你一些规律还有法则,但是用的时候我们一般很难想起来,因为我们用的少并且不知道为什么。知其所以然方能印象深刻并学以致用。 本文基于 Java 14 在JDK1.5引入自动装箱/拆箱,让开发更高效。自动装箱时编译器调用valueOf()将原始类型值转换成对象,同时自动拆箱时,编译器通过调用类似...
JDK核心JAVA源码解析(7)- 集合相关(1) - LinkedList
想写这个系列很久了,对自己也是个总结与提高。原来在学JAVA时,那些JAVA入门书籍会告诉你一些规律还有法则,但是用的时候我们一般很难想起来,因为我们用的少并且不知道为什么。知其所以然方能印象深刻并学以致用。本篇文章针对JAVA中集合类LinkedList进行分析,通过代码解释Java中的Fail-fast设计思想,以及LinkedList底层实现和与ArrayList对比下的就业场景。本文会通....
JDK核心JAVA源码解析(5) - JAVA File MMAP原理解析(下)
3.2.2. 对MappedByteBuffer进行读写对于MappedByteBuffer的读写和对于ByteBuffer的读写是一样的,可以参考我的另一片文章:https://blog.csdn.net/zhxdick/article/details/511673133.2.2.1 对MappedByteBuffer进行读写,为何最大只能2GB-1B我们来看底层实现:对于所有DirectBy....
JDK核心JAVA源码解析(5) - JAVA File MMAP原理解析(中)
1.JNI调用1:调用fstat命令获取文件大小:FileDispatcherImpl.c:#define fstat64 fstat Java_sun_nio_ch_FileDispatcherImpl_size0(JNIEnv *env, jobject this, jobject fdo) { struct stat64 fbuf; if (fstat64(fdval(en...
JAVA SPI(Service Provider Interface)原理、设计及源码解析(其一)
背景团队内部轮流技术分享,其他人都是分享源码,我每次都是设计和架构,感觉自己太特立独行。这次我要合群点,分享点源码。概念Service Provider Interface:服务提供方接口。是一种JVM层面的服务注册发现机制。谁在用jdbc源码里我见过SPI、Dubbo源码里我见过SPI、Eleasticsearch源码里我见过SPI……在基础服务中使用占比很高。怎么判断有没有用如上图,META....

Java 基础 | Object 源码解析
Java 是一门面向对象的语言,在 Java 里面一切都可以看作是一个对象,而 Java 里面所有的对象都默认继承于 Object 类,所以狗哥今天就从源码角度复习了一遍这个类。上图看出 Object 一共有 12 个方法,其中 registerNatives() 是由 C 语言实现的,这个不在研究范围内。1、getClass/** * Returns the runtime clas...

Java并发系列之四 Condition源码解析
1. Condition的应用在上一篇文章我们用Condition实现了线程交替打印0和1功能。调用Condition的await(),能实现将当前线程释放获取到的相应的锁。并且阻塞当前线程,直到其他线程调用了同一Condition的signal(),如果有多个线程在同一个Condition上调用了await()方法,那么这些线程将会被封装成一个Node节点,加入到Condition内部维护的单....
Java并发系列之六 CyclicBarrier源码解析
CyclicBarrier概述CyclicBarrier字面意思是可循环使用的线程屏障。CyclicBarrier的功能和CountDownLatch功能有点相似。都能实现线程间相互等待,直到线程做完某些任务,唤醒等待线程。那么既然他们功能类似,提供一种解决方案不就行了吗,为什么还要再提供一个呢。原因是他们的侧重点其实还不一样。在CountDownLatch中我们把线程归类为两种,一类是工作线程....
Java并发系列之五 CountDownLatch源码解析
CountDownLatch概述引用一段CountDownLatch类注释A synchronization aid that allows one or more threads to wait until a set of operations being performed in other threads completes.CountDownLatch是一个同步辅助类。它可以让一个或者....
本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。
Java解析相关内容
- Java log解析
- Java实例解析
- Java期末考试解析
- Java解析算法
- Java文件处理解析
- Java解析存储
- Java解析sql语句
- Java解析sql
- Java解析工具
- 开源Java解析
- Java解析excel
- 解析Java
- Java关键字解析
- Java解析优化策略
- Java jvm垃圾回收机制解析
- Java内存管理解析
- Java垃圾回收解析
- Java jvm解析
- Java内存解析
- Java异常处理机制解析
- Java异常处理解析
- Java流程解析
- Java线程池解析
- Java爬虫解析
- Java方法调用解析
- Java内存模型解析
- Java解析实践
- Java解析实战
- Java并发解析
- Java机制解析实践
Java更多解析相关
- Java spring解析
- Java解析机制
- Java set解析
- Java框架解析
- 数据解析Java
- Java单例模式解析
- Java jmm解析
- Java概念解析
- Java技术解析
- Java解析原理
- javase Java解析
- Java hashmap源码解析
- Java dom解析
- Java treemap解析
- Java解析示例
- Java实战解析
- 解析Java注解
- Java原理源码解析
- Java springboot解析
- Java解析内存
- Java stream解析
- Java nio解析
- Java解析文档
- 解析Java机制
- Java lambda解析
- Java内存模型解析内存
- Java dom4j解析
- 解析Java数据库
- Java序列化解析
- jvm解析Java
Java开发者
Java开发者成长课堂,课程资料学习,实战案例解析,Java工程师必备词汇等你来~
+关注