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源码解析
jdk源码解析
八之NIO(selector)
文章目录示例代码registeropenselect示例代码ServerSocketChannelserverChannel=ServerSocketChannel.open();ServerSocketserverSocket=serverChannel.socket();Selectorselector=Selector.open();serverSocket.bind(newInetSock
Nuan_Feng
·
2020-07-29 16:16
jdk源码
jdk源码解析
之——java.util源码详解
jdk源码解析
之——java.util源码详解java.util包的util自然指的就是utility(实用),就是说,这个包中定义的class和interface为我们提供了一些实用的工具可以辅助我们的开发
shyknight
·
2020-07-28 11:39
jdk源码解析
jdk源码解析
(六)——类(class)文件结构
前面的内容我们了解到jvm的内存结构。所有java文件必须经过“编译”转成class文件之后才会被jvm所识别和运用。那么我们开始了解一下类文件也就是class文件的结构。也就是我们写的java文件最终会被编译成什么样?那种格式?本文讲解内容借鉴了《Java虚拟机规范(JavaSE7版)》第四章。如果有兴趣可以自行观赏本书,对您以后的开发大有裨益。1、类文件介绍每一个Class文件都对应着唯一一个
敬业的小码哥
·
2020-07-14 22:34
JDK源码解析
之StringBuilder和StringBuffer
以下解析基于JDK8.0二者的继承层次是一样的:publicfinalclassStringBuilderextendsAbstractStringBuilderimplementsjava.io.Serializable,CharSequence{publicfinalclassStringBufferextendsAbstractStringBuilderimplementsjava.io.S
奔跑吧小蜗牛
·
2020-07-13 06:49
JAVA
jdk源码解析
(七)——Java虚拟机类加载机制
前面我们讲解了class文件的格式,以及它是什么样的。那么接下来需要了解它怎么被加载到jvm中呢?jvm的加载机制又是怎么一个过程呢?本文参考了《Java虚拟机规范(JavaSE7版)》的第五章内容来详细解释一下虚拟机类加载机制:虚拟机把描述类的数据从class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型。1虚拟机启动Java虚拟机的启动是通过引导
敬业的小码哥
·
2020-07-11 23:02
jdk源码解析
七之Condition
文章目录ConditionnewConditionawaitsignalsignalAll总结Condition主要看java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObjectnewConditionpublicConditionnewCondition(){returnsync.newCondition();}fin
Nuan_Feng
·
2020-07-10 23:49
jdk源码
JDK源码解析
实战 - AbstractQueuedSynchronizer源码解析
AbstractQueuedSynchronizer抽象同步队列简称AQS,它是实现同步器的基础组件,并发包中锁的底层就是使用AQS实现的.大多数开发者可能永远不会直接使用AQS,但是知道其原理对于架构设计还是很有帮助的,而且要理解ReentrantLock、CountDownLatch等高级锁我们必须搞懂AQS.1整体感知1.1架构图AQS框架大致分为五层,自上而下由浅入深,从AQS对外暴露的A
公众号:JavaEdge
·
2020-07-09 22:13
#JDK
源码解析
JDK源码解析
之ThreadLocal类
本文通过对ThreadLocal源码(jdk1.7)解析来加深对ThreaLocal类理解源代码如下:packagejava.lang;importjava.lang.ref.*;importjava.util.concurrent.atomic.AtomicInteger;publicclassThreadLocal{privatefinalintthreadLocalHashCode=next
LC蓝色风暴
·
2020-07-04 06:29
JAVA
JDK源码解析
(1)——数据数组排序:Arrays.sort()
(p.s:程序员应该多读代码,特别是前人写的代码。好的程序员对于代码应该有敏锐的“感知能力”,一看到代码就头昏眼花的,注定不是合格的程序员,更谈不上软件工程师。。。。俺是这么认为的。今天下载了JDK源代码文件,随便看了看,感觉蛮有收获。。。。。)概述:JDK提供了对于数组排序的库函数,java.util.Arrays类中的一些列重载的sort的方法为给定数组进行排序,以下是各个重载方法签名:voi
octopusflying
·
2020-07-02 13:32
CODE
【
JDk源码解析
之一】ArrayList源码解析
1.ArrayList的继承关系如图所示:2.宏观上说,ArrayList是基于动态数组实现的,数组具有按索引查找的特性,所以访问很快,适合经常查询的数据。3.具体源码解析。为什么说ArrayList是动态数组,这个可以看它的构造函数。如下图所示,有两个构造方法,存放元素的elementData是一个数组,同时被初始化。ArrayList的放的元素就是放在这个数组里。ArrayLIst的默认初始化
StackOverFlower
·
2020-06-27 14:17
JAVA
jdk源码解析
(一)
1、先说一下源码解析的过程:JDK-->JRE-->JVM(以openJDK代替)注意:这里要了解jdk和jre和jvm他们分别是什么?以及他们的关系才可以继续。这里先上一章从网上下载的关系图方便理解2、笔者本地的jdk是oraclejdk,jvm所在位置就是安装的jdk。jdk下jre下bin下server下的jvm.dll。也就是F:\Java\jdk\jdk1.7.0_60\jre\bin\
敬业的小码哥
·
2020-06-26 12:25
JDK源码解析
——TreeMap
第1部分TreeMap介绍TreeMap简介TreeMap是一个有序的key-value集合,它是通过红黑树实现的。TreeMap继承于AbstractMap,所以它是一个Map,即一个key-value集合。TreeMap实现了NavigableMap接口,意味着它支持一系列的导航方法。比如返回有序的key集合。TreeMap实现了Cloneable接口,意味着它能被克隆。TreeMap实现了j
张晨辉Allen
·
2020-01-07 02:32
JDK源码解析
——TreeSet and TreeMap
TreeSetandTreeMap总体介绍之所以把TreeSet和TreeMap放在一起讲解,是因为二者在Java里有着相同的实现,前者仅仅是对后者做了一层包装,也就是说TreeSet里面有一个TreeMap(适配器模式)。因此本文将重点分析TreeMap。JavaTreeMap实现了SortedMap接口,也就是说会按照key的大小顺序对Map中的元素进行排序,key大小的评判可以通过其本身的自
张晨辉Allen
·
2019-12-17 03:31
JDK源码解析
——数据数组排序:Arrays.sort()
概述:JDK提供了概述:JDK提供了对于数组排序的库函数,java.util.Arrays类中的一些列重载的sort的方法为给定数组进行排序,以下是各个重载方法签名:voidsort(char[])voidsort(char[],int,int)voidsort(byte[])voidsort(byte[],int,int)voidsort(T[],Comparator)voidsort(shor
张晨辉Allen
·
2019-12-13 04:00
JDK源码解析
之Java SPI机制
1.spi是什么SPI全称ServiceProviderInterface,是Java提供的一套用来被第三方实现或者扩展的API,它可以用来启用框架扩展和替换组件。系统设计的各个抽象,往往有很多不同的实现方案,在面向的对象的设计里,一般推荐模块之间基于接口编程,模块之间不对实现类进行硬编码。一旦代码里涉及具体的实现类,就违反了开闭原则,JavaSPI就是为某个接口寻找服务实现的机制,JavaSpi
达兔哥
·
2019-11-27 16:00
jdk源码解析
(一)---java.long.object
jdk源码解析
(一)—java.long.object我们都知道java中的类都继承自Object类,我们今天就要来探讨下Object类的一些特性,首先我们来看下Object里面有哪些方法hashCode
蜗牛不爱海绵宝宝
·
2019-09-24 00:47
java源码
jdk源码
jdk源码解析
(一)
1、先说一下源码解析的过程:JDK-->JRE-->JVM(以openJDK代替)注意:这里要了解jdk和jre和jvm他们分别是什么?以及他们的关系才可以继续。这里先上一章从网上下载的关系图方便理解2、笔者本地的jdk是oraclejdk,jvm所在位置就是安装的jdk。jdk下jre下bin下server下的jvm.dll。也就是F:\Java\jdk\jdk1.7.0_60\jre\bin\
和尚不洗碗
·
2018-10-11 16:27
jdk源码解析
之——java.util源码详解
java.util包的util自然指的就是utility(实用),就是说,这个包中定义的class和interface为我们提供了一些实用的工具可以辅助我们的开发。那么这个包中最主要的以及最重要的就是collection框架,就是我们不管开发什么项目都会用到的”类集”。我们用类集来存放和提取数据,使我们的开发高效有序。我们不太去赘述用法,而是通过源码来了解collection框架的基本实现,来使得
yuan198906030
·
2014-04-24 15:00
java
单例模式(Singleton)续——有效解决多线程问题
单例模式(Singleton)续——有效解决多线程问题 《
JDK源码解析
》的分支,讲解设计模式在jdk中使用。
孙海友
·
2014-03-26 01:00
多线程
单例模式
Singleton
效率
最好的方法
jdk源码解析
之——java.util源码详解
jdk源码解析
之——java.util源码详解java.util包的util自然指的就是utility(实用),就是说,这个包中定义的class和interface为我们提供了一些实用的工具可以辅助我们的开发
孙海友
·
2014-03-22 22:00
java
list
HashMap
set
jdk源码
上一页
1
2
3
下一页
按字母分类:
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
其他