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
JAVA源码分析
Spring 最常用的 7 个注解,你用哪几个?
本号专注
Java源码分析
。喜欢底层源码的朋友可以来交流探讨。交流群:818491202验证:88**核心注解**@Requir
Java耕耘者
·
2021-06-09 03:55
Java源码分析
-【HashMap】深入浅出的源码分析(JDK1.7版本)
每日一句有望得到的要努力,无望得到的不介意,则无论输赢姿态都会好看。概念回顾HashMap由数组+链表组成的,数组是HashMap的主体,链表则是主要为了解决哈希冲突而存在的,如果定位到的数组位置不含链表(当前entry的next指向null),那么对于查找,添加等操作很快,仅需一次寻址即可;如果定位到的数组包含链表,对于添加操作,其时间复杂度依然为O(1),因为最新的Entry会插入链表头部,急
洛神灬殇
·
2021-06-03 14:20
Java源码分析
-LinkedHashMap
LinkedHashMap继承自HashMap,同时也维护了元素的插入顺序。内部多了一个双向循环链表的维护,该链表是有序的,可以按元素插入顺序或元素最近访问顺序(LRU)排列。来看下源码吧。支持原创,转载请注明出处。LinkedHashMap是一个维护了一个双向链表的HashMap:图片来自网络.jpg继承关系publicclassLinkedHashMapextendsHashMapimplem
gatsby_dhn
·
2021-05-18 22:16
JAVA源码分析
-HashMap源码分析(二)
本文继续分析HashMap的源码。本文的重点是resize()方法和HashMap中其他的一些方法,希望各位提出宝贵的意见。话不多说,咱们上源码。finalNode[]resize(){Node[]oldTab=table;//如果老的数组为空,老的数组容量设为0intoldCap=(oldTab==null)?0:oldTab.length;intoldThr=threshold;intnewC
端木轩
·
2021-05-18 03:38
Java源码分析
-带你认识什么是AQS(上)
前提概要AQS三部曲之上篇,本篇文章主要面向与对于AQS各个组件的实现的方式和原理。了解过JUC的源码,我们就可以知道JUC下面很多工具的实现都是依靠AQS,而AQS中用于保存等待线程的队列就是CLH,下图就是并发编程AQS的基础家族谱图。image.pngCLH队列定义概念CLH是一个FIFO的队列,队列的每一个节点都是一个Node对象。当前线程获取同步状态失败的时候就会进入CLH队列。而当首节
洛神灬殇
·
2021-05-10 20:55
Java源码分析
-带你认识ThreadLocal的原理
前言 ThreadLocal是开发中常会使用的一个工具,从类的名字就可以看出,它为线程提供本地变量。即:每个线程私有的数据。提供的实际上就是一种线程隔离,不同的线程的变量归属不同的线程,线程之间不能想问访问各自的变量,当线程生命周期结束的时候,线程会被销毁。之前只知道它的作用,大概还了解一点原理知道内部用的是Map,今天又遇见了,于是有了这篇源码分析。使用方法Entity存放线程要保存的信息Th
洛神灬殇
·
2021-05-10 18:22
Rx
Java源码分析
(1)
Rx
Java源码分析
(1)Rxjava相信大家都不陌生,是现在很流行的一种解决异步通信的框架,分析源码,不会对RxJava2的源码逐字逐句的阅读,只寻找关键处,我们平时接触得到的那些代码进行分析。
JCJIE
·
2021-04-30 19:22
java源码分析
之gson
1:到官网看下gson的主要作用就是JavaObjects和JSON之间的相互转换.我们看个最简单的例子.@AllArgsConstructorpublicstaticclassBook{privateIntegerid;privateStringname;}publicstaticvoidmain(String[]args){Mapmap=Maps.newHashMap();map.put("1
go_big_place
·
2020-12-21 11:07
json
gson
java
适配器
适配器模式
数据结构
Java源码分析
参考书籍《大话数据结构》,实现参考JDK1.8线性表:Java实现类有ArrayList,LinkedListArrayList:动态容量数组的列表,扩展类有序数组intsize;//数据大小Object[]data;//容量数组默认数组是空数组,容量为0,默认增加容量值是10,DEFAULT_CAPACITY扩容规则:传入扩容值为minCapacity,若当前数组是空数组,扩容值为max(min
SimpleRRR
·
2020-10-10 00:53
《
Java源码分析
》:Vector
《
Java源码分析
》:Vector虽然,Vector集合在我们的编程中,使用的比较少,至少我使用的比较少,一般情况下,我都是倾向于使用List来存储一些同类型的元素。
HelloWorld_EE
·
2020-09-17 01:43
JAVA源码分析
Java源码分析
:深入探讨Iterator模式
Java源码分析
:深入探讨Iterator模式作者:廖雪峰作者简介廖雪峰,软件工程师,现从事J2EE开发,您可以通过
[email protected]
与他联系。
cenlop
·
2020-09-17 01:40
《Java 源码分析》:Java NIO 之 SelectionKey
《
Java源码分析
》:JavaNIO之SelectionKey在ServerSocketChannel源码分析中我们知道当把一个channel注册到指定的Selector上时,实际上就是将(channel
HelloWorld_EE
·
2020-09-16 16:22
JAVA源码分析
一起来造一个RxJava,揭秘RxJava的实现原理
网上关于Rx
Java源码分析
的文章,源码贴了一大堆,代码逻辑绕来绕去的,让人看得云里雾里的。
TellH
·
2020-09-16 08:38
Java
Android
Android Rx
Java源码分析
(1)
Observable.create(newObservable.OnSubscribe(){@Overridepublicvoidcall(Subscribersubscriber){LogUtils.e(TAG,"Looper.getLoopcall:"+Thread.currentThread().getName());subscriber.onNext("qb");subscriber.on
qb标
·
2020-09-16 08:20
源码分析
Rx
Java源码分析
又好长一段时间没写博客了。今天来个较简短的博客来强势回归哈哈。上篇博客写了RN的源码分析,出乎意料的就有两个出版社联系我要不要出书,可见RN的火热。本来也想写RN的,但因为最近接触了挺多Android的东东,还是想先总结总结先。RN就放后面啦。什么是RxJava接触RxJava也一段时间了,一直想写下关于它的文章,RxJava是用来实现异步框架的,类似于AsyncTask。这里推荐看下给Andro
showCar
·
2020-09-16 07:09
android
android技术分享与探讨
android源码分析
Android RxJava源码解析
2Single.map()3AtomicReference4delay()6Schedulers线程切换6.1subscribeOn(schedulers)6.2observeOn(schedulers)在Rx
Java
VincentWei95
·
2020-09-16 07:56
进阶
原理
Java源码分析
:深入探讨Iterator模式
java.util包中包含了一系列重要的集合类。本文将从分析源码入手,深入研究一个集合类的内部结构,以及遍历集合的迭代模式的源码实现内幕。下面我们先简单讨论一个根接口Collection,然后分析一个抽象类AbstractList和它的对应Iterator接口,并仔细研究迭代子模式的实现原理。本文讨论的源代码版本是JDK1.4.2,因为JDK1.5在java.util中使用了很多泛型代码,为了简化
weiling1225
·
2020-09-14 15:23
JAVA源码分析
---基本类型对应的包装类之基本框架
JAVA源码分析
之基本类型对应的包装类之基本框架如图,数字类型的包装类都继承了Number这个抽象类;所有的包装类都实现了序列化接口;图中没有表现出的一个是所有的类型都除了Number都实现了Comparable
fruit_dish
·
2020-09-14 15:14
java语言
JAVA源码分析
Collection之Map
Map的底层实现:LinkedList数组,一个非常大的数组,LinkedList中存储的是MyEntry对象(包括key和value属性的对象),因为要保证map中的查询速度比较快,是基于散列算法来实现的,散列的主要实现是依靠hashcode方法。hashcode的产生是基于,内存地址产生的,保证产生的每一个hashcode都是唯一的,其实这种算法有点类似于桶排序。就是一种牺牲空间,从而来换取时
修炼之路
·
2020-09-14 15:05
JAVA源码分析
Java源码分析
Java源码分析
Java源码分析
String
Java源码分析
学习源码,从基层了解Java。
qq_30008415
·
2020-09-14 14:54
Java
java源码分析
之TreeMap深入篇
TreeMap有Values、EntrySet、KeySet、PrivateEntryIterator、EntryIterator、ValueIterator、KeyIterator、DescendingKeyIterator、NavigableSubMap、AscendingSubMap、DescendingSubMap、SubMap、Entry共十三个内部类。Entry是在TreeMap中用于
快乐的燕子会飞
·
2020-09-14 14:49
java
【
JAVA源码分析
——Java.lang】包装类源码分析
包装类分析Java基本类型包括八种:byte、short、int、long、float、double、char、booleanNumber类型其中数字类型包括:整数型:byte:-127~128short:-32767~32768int:0x80000000~0x7ffffffflong:0x8000000000000000L~0x7fffffffffffffffL浮点型:float:0x0.00
weixin_34128411
·
2020-09-14 12:02
java源码分析
之HashSet
http://blog.csdn.net/jzhf2012/article/details/8540696Java容器类的用途是“保存对象”,分为两类:Map——存储“键值对”组成的对象;Collection——存储独立元素。Collection又可以分为List和Set两大块。List保持元素的顺序,而Set不能有重复的元素。本文分析Set中最常用的HashSet类,并简单介绍和对比Linked
weixin_30530523
·
2020-09-14 12:20
java
JAVA源码分析
(一)——String
String的源码分析Java中String不是基本数据类型,而是一种特殊的类。String代表的是不可变的字符序列,为不可变对象,一旦被创建,就不能修改它的值,对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去从类的继承和接口实现来看:publicfinalclassStringimplementsjava.io.Serializable,Comparable,C
Only丶爱你
·
2020-09-14 12:08
JAVA源码分析
Java源码分析
——包装类与Void类解析
在Java中,有着8种基本类型,其对应着8种包装类型,分别为:Integer、Long、Short、Boolean、Float、Double、Byte以及Character类,这8种包装类型分别封装了对应类型的常用操作以及一些优化操作,比如包装类的缓存,自动装箱等。它们之间的关系如下:在Number抽象类中定义了一些系列的基础类型的转换行为,所以关于数字操作的都继承自Number抽象类,而Bool
suye233
·
2020-09-14 12:13
JavaSE基础
Java源码分析与思考
APK批量反编译到Java
在各种被恶心之后,又继续恶心这东西……实验需要将大量AndroidApp
Java源码分析
,之前反编译出来的由于版本问题,导致不少错误,所以需要重修来批量反编译。
BetaBin
·
2020-09-13 00:24
Android
安全
《
Java源码分析
》:Timer/TimerTask
《
Java源码分析
》:Timer在JDK5.0之前,java.util.Timer/TimerTask是唯一的内置任务调度方法,而且在很长一段时间里很热衷于使用这种方式进行周期性任务调度。
HelloWorld_EE
·
2020-09-12 23:36
JAVA源码分析
Java源码分析
(四)--String
java.long.String字符串操作可以说是相当美妙了,String类作为其中的典范,值得研究一番。类定义:以字符数组为字符串的value,设置为final,不可更改。hash值是String常用的量了,根据后面的hashCode()方法得到,因为这是private,所以不用随value值更改,需要时再通过hashCode()计算,这是没问题的。publicfinalclassStringi
spring_3_shine
·
2020-09-12 00:14
java
java源码分析
(4)-AbstractStringBuilder
AbstractStringBuilder1.AbstractStringBuilder为抽象类,主要的属性有两个,一个为value,一个为count,value用于存放值,count用于管理该类的容量charvalue[];intcount;publicintlength(){//length方法返回的是count的值,而不是value.lengthreturncount;}publicin
别叫我风哥
·
2020-09-12 00:37
java源码
RxJava-基本订阅流程源码分析
以下带领大家进入Rx
Java源码分析
。
六_六
·
2020-08-25 11:38
Rx
Java源码分析
(2) 变换原理
Rx
Java源码分析
基于RxJava1.3.8。在上一章节中,主要介绍了RxJava的基本使用并对该部分的源码做了详细分析。在这一章节中,将主要介绍RxJava的另一大核心功能:变换。
Kerwin1321
·
2020-08-24 22:20
Android
开源项目
Rx
Java源码分析
Rx
Java源码分析
基于RxJava1.3.8。题外话:在写这边博客之前曾犹豫过很久,因为RxJava的源码非常复杂,感觉不是在一两篇博客中就能讲解清楚。
Kerwin1321
·
2020-08-24 22:20
Android
开源项目
Android
rxjava
rxandroid
响应式编程
源码
第三方开源库 RxJava - 自己动手写事件变换
这周还是有很多人反应这个Rx
Java源码分析
听不懂,我尽量多花一些时间多做一些思考,这里还是针对源码再补一篇文章,再做一次源码分析。publicclassObservable
红橙Darren
·
2020-08-23 03:13
ConcurrentHashMap 1.8版本介绍
《
Java源码分析
》:ConcurrentHashMapJDK1.8最近一直在看关于J.U.C中的源码,了解原子操作,了解锁机制,了解多线程并发等等。
silence---
·
2020-08-21 05:04
kotlin 从实现String的‘+’操作到了解操作符重载和函数扩展
基本操作符列举示例示例对应
Java源码分析
操作符重载小结kotlin扩展函数什么是kotlin的扩展函数?
忘语人间
·
2020-08-19 19:34
Android
java
Java源码分析
:深入探讨Iterator模式
转自:JAVA中文站作者简介廖雪峰,软件工程师,现从事J2EE开发,您可以通过
[email protected]
与他联系。java.util包中包含了一系列重要的集合类。本文将从分析源码入手,深入研究一个集合类的内部结构,以及遍历集合的迭代模式的源码实现内幕。下面我们先简单讨论一个根接口Collection,然后分析一个抽象类AbstractList和它的对应Iterator接口,并仔细研究迭代子模式的
iteye_21064
·
2020-08-15 14:18
Java
C
C++
C#
多线程
坦克大战
java源码分析
(上)
坦克大战源码分析一、mytank07.java文件分析注:至上而下将不懂的语句、结构体含义、代码作用等作出解释:1、包的使用packagecom.haiding.tank_7;包语句的语法格式为:packagepkg1[.pkg2[.pkg3…]];包的作用:1、把功能相似或相关的类或接口组织在同一个包中,方便类的查找和使用。2、如同文件夹一样,包也采用了树形目录的存储方式。同一个包中的类名字是不
小晴洛
·
2020-08-15 04:12
java
java源码分析
~浅谈String源码
String源码学习 本篇文章讨论String的源码,所有涉及到的源代码都是基于JDK1.8。 对于java程序员来说,String类再熟悉不过了,面试中也经常会被问到。但是,会用不是目的,我们要了解它其中的奥妙(设计思想),以方便在技术上有进一步的提高。String设计中的享元模式一、实现接口publicfinalclassStringimplementsjava.io.Serializab
unascribed
·
2020-08-15 03:05
java基础
java基础面试
《Java 源码分析》:Java NIO 之 Selector(第二部分selector.select())
《
Java源码分析
》:JavaNIO之Selector(第二部分selector.select())上篇博文《
Java源码分析
》:JavaNIO之Selector(第一部分Selector.open()
HelloWorld_EE
·
2020-08-11 23:58
JAVA源码分析
《
Java源码分析
》:Java NIO 之 Buffer
《
Java源码分析
》:JavaNIO之Buffer在上篇博文中,我们介绍了JavaNIO中Channel和Buffer的基本使用方法,这篇博文将从源码的角度来看下Buffer的内部实现。
HelloWorld_EE
·
2020-08-11 18:40
JAVA源码分析
记一次高级android面试经历
1.单例模式的优缺点2.retrofit源码分析优缺点retrofit注解是通过什么实现的3.rx
java源码分析
,优缺点rxjava如何进行线程切换4.mvp和mvc,mvvm的原理解释,以及优缺点比较
zz白龙
·
2020-08-11 11:41
面试
【
Java源码分析
】ConcurrentModificationException并发修改异常分析与解决方案(快速失败与安全失败)
【
Java源码分析
】ConcurrentModificationException并发修改异常分析与解决方案(快速失败与安全失败)问题描述当执行如下程序时,会抛出异常java.util.ConcurrentModificationExceptionpublicstaticvoidmain
LYZ0907
·
2020-08-10 17:13
Java
Java进阶
rx
java源码分析
Rxjava在Android界很火,不过博主工作并不接触网络开发,没有大批量多层次的使用异步任务的机会。一直听说但是并没有使用,更不会深入分析它的机制。不过出于好奇本文会研究下源码中个人关注的点,注意本文并不介绍rxjava如何使用。源码版本是RxJava-2.x,2018.1.5下载。rxjava的起点就是Observable.java1.create先看下create的demo代码:Obser
李光宇
·
2020-08-10 16:41
android
通过
Java源码分析
初探观察者模式(一)
对于观察者,很多开发者并不陌生,在日常开发过程中,这也是一个非常常见的设计模式,尤其是Android小伙伴,很多人都知道broadcast就是一个典型的观察者模式,还有最近很火的rxjava,响应式编程中,观察者模式扮演着一个很重要的角色,但观察者模式具体是怎么样运转的,部分小伙伴就有点模糊了。先从日常生活中一个例子开始说起,在看电视的过程中,我们经常看到一些抗日神剧中有这么一个剧情,鬼子进村,在
下一个丶奇迹
·
2020-08-09 22:52
设计模式
设计模式与日常开发
Rx
Java源码分析
及版本对比(一)——1.x版本基本使用分析
简介RxJavaisaJavaVMimplementationofReactiveExtensions:alibraryforcomposingasynchronousandevent-basedprogramsbyusingobservablesequences.Itextendstheobserverpatterntosupportsequencesofdata/eventsandaddsop
weixin_33753003
·
2020-08-07 20:58
RxJava 初探(网络请求)
1.Rx
Java源码分析
之——lift变换WhatisRxJava?RxJava的思想是响应式编程,这是一种事件驱动的编程模
梁山boy
·
2020-08-05 21:55
rxjava
响应式
rxjava
Java源码分析
之HashMap(JDK1.8)
一、HashMap概述HashMap是常用的Java集合之一,是基于哈希表的Map接口的实现。与HashTable主要区别为不支持同步和允许null作为key和value。由于HashMap不是线程安全的,如果想要线程安全,可以使用ConcurrentHashMap代替。二、HashMap数据结构HashMap的底层是哈希数组,数组元素为Entry。HashMap通过key的hashCode来计算
逝水寒缘
·
2020-08-05 16:45
Java
java
jdk
源码
hashmap
Java源码详解四:String源码分析--openjdk java 11源码
文章目录注释类的继承数据的存储构造函数charAt函数equals函数hashCode函数indexOf函数intern函数本系列是Java详解,专栏地址:
Java源码分析
String官方文档:String
zhang0peter
·
2020-08-04 09:01
java源码分析
java
Java源码分析
——HashMap(JDK1.8)
JDK1.8对HashMap进行了比较大的优化,底层实现由之前的“数组+链表”改为“数组+链表/红黑树”,关于HashMap在JDK1.7中的分析在上篇文章:
Java源码分析
——HashMap(JDK1.7
愿闻其详.
·
2020-08-04 07:12
Java源码分析
——HashMap(JDK1.7、JDK1.8)
鉴于篇幅,本篇主要分析JDK1.7源码,关于JDK1.8部分的源码分析放入下篇文章
Java源码分析
——HashMap(JDK1.8)HashMap在JDK1.7与JDK1.8中有较大的差别,下文就先以JDK1.7
愿闻其详.
·
2020-08-04 07:12
上一页
1
2
3
4
5
6
7
下一页
按字母分类:
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
其他