E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
《JDK源码》
JDK1.8源码分析02之阅读源码顺序
序言:阅读
JDK源码
应该从何开始,有计划,有步骤的深入学习呢?下面就分享一篇比较好的学习源码顺序的文章,给了我们再阅读源码时,一个指导性的标志,而不会迷失方向。
方子龙
·
2019-08-07 11:00
【JDK】
JDK源码
分析-ReentrantLock
概述在JDK1.5以前,锁的实现只能用synchronized关键字;1.5开始提供了ReentrantLock,它是API层面的锁。先看下ReentrantLock的类签名以及如何使用:publicclassReentrantLockimplementsLock,java.io.Serializable{}典型用法:publicvoidm(){lock.lock();//blockuntilco
WriteOnRead
·
2019-08-06 21:00
JDK1.8源码分析01之学习建议(可以延伸其他源码学习)
同时现在好多面试官都喜欢问源码,问你是否读过
JDK源码
等等?针对如何阅读源码,也请教了我的老师。下面就先来看看老师的回答,也许会有帮助呢。
方子龙
·
2019-08-06 08:00
JDK1.8源码分析01之学习建议(可以延伸其他源码学习)
同时现在好多面试官都喜欢问源码,问你是否读过
JDK源码
等等?针对如何阅读源码,也请教了我的老师。下面就先来看看老师的回答,也许会有帮助呢。
Java技术干货
·
2019-08-06 00:00
jdk8
源码分析
后端
java
【JDK】
JDK源码
分析-AbstractQueuedSynchronizer(3)
概述前文「
JDK源码
分析-AbstractQueuedSynchronizer(2)」分析了AQS在独占模式下获取资源的流程,本文分析共享模式下的相关操作。
WriteOnRead
·
2019-08-05 22:00
【JDK】
JDK源码
分析-AbstractQueuedSynchronizer(2)
概述前文「
JDK源码
分析-AbstractQueuedSynchronizer(1)」初步分析了AQS,其中提到了Node节点的「独占模式」和「共享模式」,其实AQS也主要是围绕对这两种模式的操作进行的
WriteOnRead
·
2019-08-04 22:00
Mac 10.14.4 编译openjdk1.9源码 及集成clion动态调试
警告⚠️:本文耗时很长,先做好心理准备;编译open
jdk源码
需要很大的耐心,因为要踩很多坑,解决很多问题,本人从编译开始到结束用了两天时间,按照本篇教程踩坑会少许;谢谢观看一、获取open
jdk源码
:
王六六666
·
2019-08-04 16:00
【JDK】
JDK源码
分析-AbstractQueuedSynchronizer(1)
概述前文「
JDK源码
分析-Lock&Condition」简要分析了Lock接口,它在JDK中的实现类主要是ReentrantLock(可译为“重入锁”)。
WriteOnRead
·
2019-08-04 11:00
JDK源码
--HashSet
一、概念类定义:publicclassHashSetextendsAbstractSetimplementsSet,Cloneable,java.io.Serializable继承了AbstractSet抽象类,实现了Set接口,拥有一组Set通用的操作。实现了Cloneable接口,可进行浅层次拷贝。实现了Serializable接口,可进行序列化。特点:允许存放空对象。没有重复元素。不保证元素
TomyZhang
·
2019-08-01 10:41
JDK源码
--Object
一、使用publicfinalnativeClassgetClass()publicStringtoString()publicnativeinthashCode()publicbooleanequals(Objectobj)//TestObjectpublicclassTestObject{privatestaticfinalStringTAG="TestObject";privateObjec
TomyZhang
·
2019-08-01 10:24
【JDK】
JDK源码
分析-HashMap(2)
前文「
JDK源码
分析-HashMap(1)」分析了HashMap的内部结构和主要方法的实现原理。但是,面试中通常还会问到很多其他的问题,本文简要分析下常见的一些问题。
WriteOnRead
·
2019-08-01 00:00
【JDK】
JDK源码
分析-LinkedHashMap
概述前文「
JDK源码
分析-HashMap(1)」分析了HashMap主要方法的实现原理(其他问题以后分析),本文分析下LinkedHashMap。
WriteOnRead
·
2019-08-01 00:00
调试过程中发现按f5无法走进
jdk源码
debug模式,在fis=newFileInputStream(file);行打断点调试过程中发现按f5无法走进
jdk源码
packagecom.lzl.spring.test;importjava.io.File
逆水行舟!
·
2019-07-31 22:00
JDK源码
那些事儿之ArrayBlockingQueue
线程在JDK中是非常重要的一块内容,所有的应用服务都离不开线程的相关操作,对于大量线程的使用都是推荐使用线程池来进行操作和管理,JDK本身提供的线程池在服务中经常被使用到,以往经常使用Executors来创建,但是阿里规范中也指出了其存在的隐患,从源码来看,内部大量使用了队列相关的类,所以在深入线程部分之前,我们需要了解队列相关的内容,本文就以ArrayBlockingQueue开始对JDK中的常
freeorange
·
2019-07-28 13:00
JDK源码
那些事儿之ArrayBlockingQueue
线程在JDK中是非常重要的一块内容,所有的应用服务都离不开线程的相关操作,对于大量线程的使用都是推荐使用线程池来进行操作和管理,JDK本身提供的线程池在服务中经常被使用到,以往经常使用Executors来创建,但是阿里规范中也指出了其存在的隐患,从源码来看,内部大量使用了队列相关的类,所以在深入线程部分之前,我们需要了解队列相关的内容,本文就以ArrayBlockingQueue开始对JDK中的常
orange
·
2019-07-28 00:00
源码
jdk8
阅读《代码整洁之道》总结
当阅读
JDK源码
或者其他优秀开源工
编码砖家
·
2019-07-27 22:00
消除java异常开销
抛异常的最大开销是异常栈的构建过程,如果你的程序调用很深,特别是用了第三方开源框架,这个开销是不容忽视的开销在哪查看
jdk源码
/***Constructsanewthrowablewiththespecifiedcauseandadetail
玩名堂_
·
2019-07-27 10:29
jvm
HashSet源码分析:
JDK源码
系列
1.简介继续分析源码,上一篇文章把HashMap的分析完毕。本文开始分析HashSet简单的介绍一下。HashSet是一个无重复元素集合,内部使用HashMap实现,所以HashMap的特征耶继承了下来。存储的元素是无序的并且HashSet允许使用空的元素。HashSet是非同步的。如果多个线程同时访问一个哈希set,而其中至少一个线程修改了该set,那么它必须保持外部同步。(参考JDK1.8文档
乱敲代码
·
2019-07-24 11:35
Java
Docker
SpringBoot
HashSet源码分析:
JDK源码
系列
1.简介继续分析源码,上一篇文章把HashMap的分析完毕。本文开始分析HashSet简单的介绍一下。HashSet是一个无重复元素集合,内部使用HashMap实现,所以HashMap的特征耶继承了下来。存储的元素是无序的并且HashSet允许使用空的元素。HashSet是非同步的。如果多个线程同时访问一个哈希set,而其中至少一个线程修改了该set,那么它必须保持外部同步。(参考JDK1.8文档
乱敲代码
·
2019-07-24 10:52
源码
HashSet源码分析:
JDK源码
系列
1.简介继续分析源码,上一篇文章把HashMap的分析完毕。本文开始分析HashSet简单的介绍一下。HashSet是一个无重复元素集合,内部使用HashMap实现,所以HashMap的特征耶继承了下来。存储的元素是无序的并且HashSet允许使用空的元素。HashSet是非同步的。如果多个线程同时访问一个哈希set,而其中至少一个线程修改了该set,那么它必须保持外部同步。(参考JDK1.8文档
乱敲代码
·
2019-07-22 09:00
JAVA面试题 手写ArrayList的实现,在笔试中过关斩将?
我们都知道ArrayList是基于数组实现,如果让你实现
JDK源码
ArrayList中add()、remove()、get()方法,你知道如何实现吗?
Java蚂蚁
·
2019-07-18 07:00
Java多线程学习笔记(一)
技能这一张讲了很多琐碎点,也可以参照
jdk源码
理解,Thread类的核心方法很多,着重掌握以下内容:线程的启动如何使线程暂停如何使线程停止线程的优先级线程的安全相关问题进程与线程的概念进程–操作系统管理的基本单元
伟大的华仔
·
2019-07-17 10:44
java
程序员的成长课
【深入浅出-JVM】(4):编译 jdk
环境mac,xcode,jdk8,openjdk,autoconf步骤安装autoconfbrewinstallautoconf下载open
jdk源码
gitclonehttps://github.com
mousycoder
·
2019-07-15 16:33
java
jvm
【深入浅出-JVM】
【深入浅出-JVM】(4):编译 jdk
环境mac,xcode,jdk8,openjdk,autoconf步骤安装autoconfbrewinstallautoconf下载open
jdk源码
gitclonehttps://github.com
mousycoder
·
2019-07-15 16:00
简单看看原码、补码和反码
不过平常看
jdk源码
的时候有很大的感触,就是基础真的很重要,那什么是基础呢?除了java的基本语法之外,最基础的莫过于原码,反码和补码了以及基本的运算了!
java小新人
·
2019-07-14 00:00
LinkedList源码分析:
JDK源码
分析系列
如果本文中有不正确的地方请指出由于没有留言可以在公众号添加我的好友共同讨论。1.介绍LinkedList是线程不安全的,允许元素为null的双向链表。2.继承结构我们来看一下LinkedList的继承结构图:代码实现:publicclassLinkedListextendsAbstractSequentialListimplementsList,Deque,Cloneable,java.io.Se
乱敲代码
·
2019-07-12 11:00
HashMap源码分析(一):
JDK源码
分析系列
正文开始注:JDK版本为1.8HashMap1.8和1.8之前的源码差别很大目录简介数据结构类结构属性构造方法增加删除修改总结1.HashMap简介HashMap基于哈希表的Map接口实现,是以key-value存储形式存在。(除了不同步和允许使用null之外,HashMap类与Hashtable大致相同。)HashMap的实现不是同步的,这意味着它不是线程安全的。它的key、value都可以为n
乱敲代码
·
2019-07-11 15:00
JDK源码
分析系列---ArrayList和LinkList
ArrayList和LinkList的源码分析概要ArrayList和LinkList是常用的存储结构,不看源码先分析字面意思,Array意思是数组,可知其底层是用数组实现的,Link意思是链接,可知是以链表实现,这两种数据结构各有什么特点呢?在实际开发中,我们要如何选择?1.ArrayListArrayList是实现了List接口的可变数组,即动态数组,它不仅实现了List的可选操作,同时允许元
iceblow
·
2019-07-10 16:00
JDK源码
分析系列---String,StringBuilder,StringBuffer
1.StringpublicfinalclassStringimplementsjava.io.Serializable,Comparable,CharSequence{//存储字符,final修饰privatefinalcharvalue[];//缓存hashcode,默认0privateinthash;//序列号privatestaticfinallongserialVersionUID=-6
iceblow
·
2019-07-09 18:00
JDK源码
那些事儿之并发ConcurrentHashMap下篇
上一篇文章已经就ConcurrentHashMap进行了部分说明,介绍了其中涉及的常量和变量的含义,有些部分需要结合方法源码来理解,今天这篇文章就继续讲解并发ConcurrentHashMap前言本文主要介绍ConcurrentHashMap中的一些重要方法,结合上篇文章中的讲解部分进行更进一步的介绍回顾下上篇文章,我们应该已经知道ConcurrentHashMap的整体结构和HashMap基本一
freeorange
·
2019-07-06 19:00
JDK源码
那些事儿之并发ConcurrentHashMap下篇
上一篇文章已经就ConcurrentHashMap进行了部分说明,介绍了其中涉及的常量和变量的含义,有些部分需要结合方法源码来理解,今天这篇文章就继续讲解并发ConcurrentHashMap前言本文主要介绍ConcurrentHashMap中的一些重要方法,结合上篇文章中的讲解部分进行更进一步的介绍回顾下上篇文章,我们应该已经知道ConcurrentHashMap的整体结构和HashMap基本一
orange
·
2019-07-06 00:00
jdk8
java
【JDK】
JDK源码
分析-HashMap(1)
概述HashMap是Java开发中最常用的容器类之一,也是面试的常客。它其实就是前文「数据结构与算法笔记(二)」中「散列表」的实现,处理散列冲突用的是“链表法”,并且在JDK1.8做了优化,当链表长度达到一定数量时会把链表转为红黑树。因此,JDK1.8中的HashMap实现可以理解为「数组+链表+红黑树」。内部结构示意图:HashMap的继承结构和类签名如下:publicclassHashMape
WriteOnRead
·
2019-07-02 00:00
随意看看AtomicInteger类和CAS
最近在读
jdk源码
,怎么说呢?
java小新人
·
2019-07-01 09:00
2019-06-29 jdk8的第一篇
最近一直在学习
jdk源码
,在网上看了结合源码讲解的内容千篇一律,很多看的云里雾里,有一天早上5点多的时候,被蚊子咬醒了,干脆起来看源码,感觉颇有些收获,心痒难耐,想着把它写出来,这样以学促写,同时以写促学
青衣书童
·
2019-06-29 21:40
JDK源码
解读:Object类
1.privatestaticnativevoidregisterNatives();registerNatives方法主要作用:将C/C++中的方法映射到Java中的native方法,实现方法命名的解耦用native关键字修饰的函数表明该方法的实现并不是在Java中完成,而是由C/C++去完成,并被编译成.dll文件,由Java去调用。方法的具体实现在dll文件中。不同的平台,其具体实现有所不同
aiqinhai1016_
·
2019-06-28 10:05
读后感
开发问题总结
【Java源码解读——释疑】为什么将类成员变量复制为方法本地变量
JDK源码
中经常会出现一种代码模式:将类成员变量复制到方法本地变量上。如:String.compareTo()方法中会将类成员变量value复制为方法本地变量v1:public
草料场
·
2019-06-26 10:00
0.7、Spring源码学习 ——从接口的抽象方法和抽象类的抽象方法说起
举个例子UML关系图关门,放代码抽象父类Top子类Bottom测试方法和结果最佳实践
JDK源码
中的java.io.InputStream设计模式的模版方法模式前言体能状态先于精神状态,习惯先于决心,聚焦先于喜好
bestcxx
·
2019-06-25 08:50
Spring
源码
Spring
源码学习
JDK源码
阅读,手写HashMap
HashMap是jdk提供的最常用的容器之一,jdk1.7及之前版本,HashMap底层基于数组和单链表结构,数组每个元素是一对键值对对象,该对象包括hash值,key,value以及单链表下一个键值对的引用。jdk1.8对HashMap底层结构做了一些改进,当数组同一位置的键值对超过8个,不再以单链表形式存储,而是改为红黑树。进一步提升了性能。本文基于jdk1.7,参考源码,手写一个简单的Has
yozzs
·
2019-06-24 13:12
JDK
JDK源码
那些事儿之并发ConcurrentHashMap上篇
前面已经说明了HashMap以及红黑树的一些基本知识,对JDK8的HashMap也有了一定的了解,本篇就开始看看并发包下的ConcurrentHashMap,说实话,还是比较复杂的,笔者在这里也不会过多深入,源码层次上了解一些主要流程即可,清楚多线程环境下整个Map的运作过程就算是很大进步了,更细的底层部分需要时间和精力来研究,暂不深入前言jdk版本:1.8JDK7中,ConcurrentHash
freeorange
·
2019-06-23 16:00
JDK源码
那些事儿之并发ConcurrentHashMap上篇
前面已经说明了HashMap以及红黑树的一些基本知识,对JDK8的HashMap也有了一定的了解,本篇就开始看看并发包下的ConcurrentHashMap,说实话,还是比较复杂的,笔者在这里也不会过多深入,源码层次上了解一些主要流程即可,清楚多线程环境下整个Map的运作过程就算是很大进步了,更细的底层部分需要时间和精力来研究,暂不深入前言jdk版本:1.8JDK7中,ConcurrentHash
orange
·
2019-06-23 00:00
java
jdk8
源码分析
JDK源码
阅读(三):ArraryList源码解析
今天来看一下ArrayList的源码目录介绍继承结构属性构造方法add方法remove方法修改方法获取元素size()方法isEmpty方法clear方法循环数组1.介绍一般来讲文章开始应该先介绍一下说下简介。这里就不介绍了如果你不知道ArrayList是什么的话就没必要在看了。大致讲一下一些常用的方法2.继承结构ArrayList源码定义:ArrayList继承结构如下:Serializable
乱敲代码
·
2019-06-19 11:00
JDK源码
阅读(一):Object源码分析
最近经过某大佬的建议准备阅读一下JDK的源码来提升一下自己所以开始写
JDK源码
分析的文章阅读JDK版本为1.8目录Object结构图构造器equals方法getClass方法hashCode方法toString
乱敲代码
·
2019-06-18 15:00
面试中的 ThreadLocal 原理和使用场景你遇到过吗
我们来看下
JDK源码
中是如何解释的:Thiscla
java1856905
·
2019-06-12 16:11
JDK源码
(二):String
String类实现了三个接口Serializable/Comparable/CharSequence,一个个看:Serializable:序列化接口,表示这个类是可序列化的,所谓的Serializable,就是java提供的通用数据保存和读取的接口,下次好好理解了这个类再详细说Comparable:字面意思,可比较,实现compareTo方法,从源码可以看出就是挨个比较字符串中字符的大小(unic
Ethan_zyc
·
2019-06-11 09:35
JAVA多线程的初级认识7-ConcurrentHashMap简要分析
看了JDK1.8的CHM的代码,洋洋洒洒6000+行,应该是
jdk源码
最复杂的一个类了吧。头疼,分析一下流程和核心API吧~对比1.8和1.7的升级优化的区别如下:1.7时候是CHM是多个Segm
comil4444
·
2019-06-09 14:17
java
Thread
无符号右移一个负数会得到什么结果?
前言最近看
JDK源码
发现代码中竟然会出现无符号右移负数的形式,很有意思。
coderALEX
·
2019-06-06 23:29
java
【java】java高级部分——注解
我们打开
jdk源码
有时
Alearn_
·
2019-05-30 19:28
java
关于我的公众号Alitaba119的价值
我是Kahuna,现任职阿里巴巴,公众号Alitaba119旨在为关注的用户带来成长,成长分为以下几方面:源码深度理解:深度理解
JDK源码
,解释源码里面每一行代码的用意。
Alitaba119
·
2019-05-25 14:51
java
源码
jdk
关于我的公众号Alitaba119的价值
阅读更多我是Kahuna,现任职阿里巴巴,公众号Alitaba119旨在为关注的用户带来成长,成长分为以下几方面:1.源码深度理解:深度理解
JDK源码
,解释源码里面每一行代码的用意。
froest
·
2019-05-25 14:00
java
源码
jdk
领域建模
阿里巴巴
关于我的公众号Alitaba119的价值
阅读更多我是Kahuna,现任职阿里巴巴,公众号Alitaba119旨在为关注的用户带来成长,成长分为以下几方面:1.源码深度理解:深度理解
JDK源码
,解释源码里面每一行代码的用意。
froest
·
2019-05-25 14:00
java
源码
jdk
领域建模
阿里巴巴
上一页
25
26
27
28
29
30
31
32
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他