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源码
[
Java源码
][并发J.U.C]---用代码一步步实现ReentrantLock
前言在前面的文章已经介绍了AQS,接下来的几篇文章将会介绍各种锁,而且这些锁都是基于AQS的,所以需要对AQS有一定的了解将会帮助我们更容易理解这些锁.本文分析的主题是重入锁ReentrantLock.本文源代码:源代码下载本文会以三步来进行ReentrantLock的分析.1.先以一个小例子来解释重入锁的基本概念2.用UML画出该类的结构3.分析源码并且用一个例子测试例子1:简单理解重入锁Ree
nicktming
·
2020-06-21 19:36
Java源码
科普系列之数据结构篇(1):数组
Java源码
科普系列之数据结构篇(1):数组数组定义首先来看数组的定义:数组是具有相同类型的数据组成的有序集合。这里的“有序”指的是按顺序排列,占用连续的内存空间。
CanvaChen
·
2020-06-21 18:02
Java
JAVA源码
学习(一)
1.HashMap线程不安全。底层实现:数组+链表/红黑树数组在HashMap中被称为buckets,每个bucket又存放着由链表中的Node和红黑树中的TreeNode组成的bins。不论是Node还是TreeNode,它们都是形式的泛型类。即Node和TreeNode,且TreeNode的父类继承自Node,K为用于映射的对象,V为映射对应的值。HashMap中我们主要关心put和get操作
得尔塔
·
2020-06-21 18:34
源码学习
java
JUC---并发队列源码解析(JDK13)
java.util.concurrent包系列文章JUC—ThreadLocal源码解析(JDK13)JUC—ThreadPoolExecutor线程池源码解析(JDK13)JUC—各种锁(JDK13)JUC—原子类Atomic*.
java
Mistra丶
·
2020-06-21 17:38
JUC
JAVA
面试官系统精讲
Java源码
及大厂真题 - 48 一起看过的 Java 源码和面试真题
48一起看过的
Java源码
和面试真题不为了源码而读源码,只为了更好的实践持续几个月,我们的专栏终于结束了,这篇总结篇,我们又想回到当初写这篇专栏的初心:我们不为读源码而读源码,只是为了更好的实践。
星河子_YumWisdom
·
2020-06-21 16:03
面试官系统精讲
Java源码
及大厂真题 - 28 Future、ExecutorService 源码解析
28Future、ExecutorService源码解析今天应做的事没有做,明天再早也是耽误了。引导语本章和大家一起看下有返回值的线程如何创建,两种线程API之间如何关联,介绍一下和线程相关的其余API。1整体架构画了一个关于线程API之间关系的依赖图,如下:在上一章节,我们说了Thread和Runnable,本小节我们按照这个图把剩下的几个API也说完,然后把API之间的关系理清楚。为了方便大家
星河子_YumWisdom
·
2020-06-21 16:03
面试官系统精讲
Java源码
及大厂真题 - 46 ServerSocket 源码及面试题
46ServerSocket源码及面试题引导语上一小节我们学习了Socket,本文我们来看看服务端套接字API:ServerSocket,本文学习完毕之后,我们就可以把客服端Socket和服务端ServerSocket串联起来,做一个真实的网络通信的demo了。1类属性ServerSocket的主要作用,是作为服务端的套接字,接受客户端套接字传递过来的信息,并把响应回传给客户端,其属性非常简单,如
星河子_YumWisdom
·
2020-06-21 16:03
面试官系统精讲
Java源码
及大厂真题 - 45 Socket 源码及面试题
45Socket源码及面试题引导语Socket中文翻译叫套接字,可能很多工作四五年的同学都没有用过这个API,但只要用到这个API时,必然是在重要的工程的核心代码处。大家平时基本都在用开源的各种rpc框架,比如说Dubbo、gRPC、SpringCloud等等,很少需要手写网络调用,以下三小节可以帮助大家补充这块的内容,当你真正需要的时候,可以作为手册示例。本文和《ServerSocket源码及面
星河子_YumWisdom
·
2020-06-21 16:03
面试官系统精讲
Java源码
及大厂真题 - 11 HashSet、TreeSet 源码解析
11HashSet、TreeSet源码解析更新时间:2019-09-1619:37:35成功的奥秘在于目标的坚定。——迪斯雷利引导语HashSet、TreeSet两个类是在Map的基础上组装起来的类,我们学习的侧重点,主要在于Set是如何利用Map现有的功能,来达成自己的目标的,也就是说如何基于现有的功能进行创新,然后再看看一些改变的小细节是否值得我们学习。1HashSet1.1类注释看源码先看类
星河子_YumWisdom
·
2020-06-21 16:31
面试官系统精讲
Java源码
及大厂真题 - 06 LinkedList 源码解析
06LinkedList源码解析智慧,不是死的默念,而是生的沉思。——斯宾诺莎引导语LinkedList适用于集合元素先入先出和先入后出的场景,在队列源码中被频繁使用,面试也经常问到,本小节让我们通过源码来加深对LinkedList的了解。1整体架构LinkedList底层数据结构是一个双向链表,整体结构如下图所示:上图代表了一个双向链表结构,链表中的每个节点都可以向前或者向后追溯,我们有几个概念
星河子_YumWisdom
·
2020-06-21 16:31
面试官系统精讲
Java源码
及大厂真题 - 15 CopyOnWriteArrayList 源码解析和设计思路
15CopyOnWriteArrayList源码解析和设计思路古之立大事者,不唯有超世之才,亦必有坚韧不拔之志。引导语在ArrayList的类注释上,JDK就提醒了我们,如果要把ArrayList作为共享变量的话,是线程不安全的,推荐我们自己加锁或者使用Collections.synchronizedList方法,其实JDK还提供了另外一种线程安全的List,叫做CopyOnWriteArrayL
星河子_YumWisdom
·
2020-06-21 16:31
面试官系统精讲
Java源码
及大厂真题 - 01 开篇词:为什么学习本专栏
说起自己开始阅读
Java源码
的契机,还是在第一年换工作的时候,被大厂的技术面虐的体无完肤,后来总结大厂的面试套路,发现很喜欢问Java底层实现,即Java
星河子_YumWisdom
·
2020-06-21 16:30
IntelliJ IDEA设置查看Java API帮助文档
点击查看源码,可以根据IntelliJIDEA提示下载和关联
Java源码
,源码中有注释,但是看起来不是很方便。可以设置把鼠标放在类或方法等上面,自动展示对应的帮助文档信息。
巨坚强
·
2020-06-21 16:20
IntelliJ
IDEA
工欲善其事
必先利其器
Android面试题(转载)
只不过Android平台上虚拟机运行的是Dex字节码,一种对class文件优化的产物,传统Class文件是一个
Java源码
文件会生成一个.class文件,而Android是把所有Class文件进行合并,
weixin_34236497
·
2020-06-21 11:14
面试官:你背了几道面试题就敢说熟悉
Java源码
?对不起,我们不招连源码都不会看的人
如果你不会看源码,请耐心看下去一、我的真实经历标题是我2019.6.28在深圳某500强公司面试时候面试官跟我说的话,即使是现在想起来,也是觉得无尽的羞愧,因为自己的愚钝、懒惰和自大,我到深圳的第一场面试便栽了大跟头。我确信我这一生不会忘记那个燥热的上午,在头一天我收到了K公司的面试通知,这是我来深圳的第一个面试邀约。收到信息后,我激动得好像已经收到了K公司的offer,我上网专门查了下K公司的面
Baldwin_KeepMind
·
2020-06-21 07:00
java
学习
java源码
解析之反射代理(一)
处于种种原因,本应该早就写了的这篇文章,却一直u通道现在。废话不多说,开始正文。反射的源码体系如下(由于水平有限,精力有限,因此不十分准确):从查看源码所接触的类来说,这个内容不算多。先来看一下其官方所给出的该包下的类:另外,其逻辑相对而言也不是太难。从查看的时间线进行解读吧。既然是反射,那么首当其冲的便是Reflection了这是判断该反射对象的修饰属性。判断包是否一致,用于类加载器相关的操作。
Automannnn
·
2020-06-21 05:30
java基础源码查看
深入学习
java源码
之DelayQueue.poll()与DelayQueue.peek()
深入学习
java源码
之DelayQueue.poll()与DelayQueue.peek()DelayQueue是JDK1.5时,随着J.U.C包一起引入的一种阻塞队列,它实现了BlockingQueue
wespten
·
2020-06-21 05:18
Java源码
notepad++中,配置完成java环境后,编译成功却无法运行。
例如,新建java源文件,取名为test.
java源码
如下:classTest1{inti=1;}classTest2{inti=2;publicstaticvoidmain(String[]args)
自天佑
·
2020-06-21 03:48
java源码
分析之List接口以及ArrayList、LinkedList、Stack、Vector等实现类
讲解jdk源码中List接口之前我们先来看一个模式,迭代器设计模式。迭代器设计模式主要是为了对容器提供统一的遍历接口,对于不同的数据结构的遍历方式由不同的iterator实现类所实现,而且也对原始数据进行了封装,不至于在用户使用时暴漏内部细节,类图如下。上面图中的各个类其实就是jdk中Collection容器对迭代器设计模式的一个实现,Itr是AbstractList的一个内部类,内部类的好处就是
fckeji
·
2020-06-21 01:46
java源码分析
JAVA源码
解读---HashMap目录扩展的奥秘
JAVA源码
解读---HashMap目录扩展的奥秘摘要:为了探索JAVA1.7源码中HashMap类数据的组织方法与目录扩展方法,本文通过对JAVA1.7源码中HashMap类源码的阅读与分析,得出结论
薄荷微光少年梦
·
2020-06-21 00:02
algorithm
analysis
阿里云【名师课堂】Java面向对象开发82 ~ 84:包的定义及使用
82:包的定义只需要在
Java源码
的第一行编写:package
溺水的情书
·
2020-06-20 22:00
(
Java源码
阅读) ArrayList为什么线程不安全?
ArraysList是线程不安全的数据类型。如果多个线程同时访问列表实例,并且至少有一个线程在结构上修改列表,则需要在外部同步。使用Collections.sychronizedList方法是线程安全的。查看JDK文档,在结构上修改ArraysList的方法有分析源码发现,在add方法中的elementData[size++]=e;存在线程不安全的风险。elementData与size都是全局变量
天才程序YUAN
·
2020-06-20 22:33
#
Java源码阅读
手写Spring框架准备工作之java 反射机制
Java程序启动后,首先把.
java源码
编译成.class字节码,然后再把.class字节码加载到JVM中运行.当我们new一个对象时,Java在代码编译期就已经知道对象
星倦
·
2020-06-20 21:55
看了Java的Class的源码,我自闭了
java源码
之Class源码的重要性不言而喻,虽然枯燥,但是也有拍案叫绝。这是我的源码系列第二弹,后续还会一直更新,欢迎交流。String源码可以看我的
Java源码
之String,如有不足,希望指正。
chenweicool
·
2020-06-20 19:00
面试题:
java源码
中用到哪些设计模式,为什么这样用
0.简单工厂模式(StaticFactoryMethod,非23种设计模式之一)又叫做静态工厂方法(StaticFactoryMethod)模式,但不属于23种GOF设计模式之一。简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类。spring中的BeanFactory就是简单工厂模式的体现,根据传入一个唯一的标识来获得bean对象,但是否是在传入参数后创建还是传入参数前
ispotu
·
2020-06-12 19:18
java
死啃了String源码之后
Java源码
之String说在前面:为什么看源码:最好的学习的方式就是模仿,接下来才是创造。而源码就是我们最好的模仿对象,因为写源码的人都不是一般的人,所以用心学习源码,也就可能变成牛逼的人。
chenweicool
·
2020-06-08 19:00
Java多线程基础与并发编程学习笔记目录
后续陆续记录每个知识点,包括理论依据和代码案例,以加深和巩固记忆.所学课程链接:https://www.imooc.com/t/2854586第〇部分:Unsafe类搬运openjdk8的sun.misc.Unsafe.
java
niewj
·
2020-05-27 23:48
并发编程
java
Java基础-类与对象初始化
Java源码
(.java文件)编译后生成字节码(.class文件),一个.java文件如果定义了多个类,则会为每个类生成一个.class文件。然后jvm虚拟机加载并运行字节码文件。
Allen赵子强
·
2020-05-13 10:14
jeb和jadx的比较杂谈
jadx又是什么鬼,众所周知,在我们把smali转成
java源码
时通常是借助d2j+jd-gui,或者是JEB1,这两个软件都有各自的优势和缺陷,前者反编译能力较弱,抗干扰能力很弱,对于一些嵌套循环的反编译展示能力很差
阶前
·
2020-05-12 15:45
逆向
Java源码
系列之Integer、Long
1前言我们都知道,java提供了8种基本数据类型供我们使用,此外,java还提供了这些基本数据类型所对应的包装类,而且通过自动装箱和自动拆箱机制能够轻松地完成基本数据类型和包装类之间的转换。自动装箱:自动将基本数据类型转换为包装类。自动拆箱:自动将包装类转换为基本数据类型。2Integer2.1总体结构首先,我们来看一下Integer类的总体结构,如下图所示:Integer类图结构Integer继
l1fe1
·
2020-05-10 16:31
Java源码
系列之String
前言字符串在我们的工作场景中应用广泛,不同于基本数据类型,Java中的字符串属于对象,Java中提供了String类来创建字符串,并提供了一系列的方法来对字符串进行替换、拆分和合并等操作。总体结构首先,我们来看一下String类的总体结构,如下图所示:String类图结构String类实现了Serializable接口,这说明String的对象能够被序列化String类实现了Comparable接
l1fe1
·
2020-05-09 21:50
Java(一)
基础线程基础一、JDK和JREJDK:java开发工具包,提供了java的开发环境和运行环境;JRE:java运行环境;JDK包含了JRE,同时还包含了编译
java源码
的编译器javac,还包含了很多java
李姗姗_8ef1
·
2020-04-25 14:02
1-JVM基础
1-JVM基础
java源码
文件,通过javac转换成class文件。
赵小胖0914
·
2020-04-25 14:00
java源码
解析-object
引言:儿子,儿啊,我是你亲爸爸Object方法分类1.getClasspublicfinalnativeClassgetClass();作用:用于获取对象的类类型解读:native修饰,标识此方法底层由c实现final关键字修饰,子类不可重写该方法,保证对象类类型的唯一性,避免重写改方法后,出现不同类的对象,获取到相同的类类型使用示例:publicclassClassDemo{publicstat
狗肉是只猫
·
2020-04-20 17:25
在IDEA中搭建
Java源码
学习环境并上传到GitHub上
打开IDEA新建一个项目创建一个最简单的Java项目即可在项目命名填写该项目的名称,我这里写的项目名为Java_Source_Study点击Finished,然后在项目的src目录下新建源码文件存放的包,我这里创建的包直接为source项目结构构建好了,下面是源码的获取到本地JDK的安装目录下寻找一个src.zip的文件解压到本地目录中,我这里解压到E盘的Java_Source目录下,解压完成后就
程序零世界
·
2020-04-19 19:00
Intellij IDEA 阅读源码的 4 个绝技(必看)
前段时间分享了《阅读跟踪
Java源码
的几个小技巧》是基于Eclipse版本的,看大家的留言都是想要IDEA版本的源码阅读技巧。所以,为了满足众多IDEA粉丝的要求,栈长我特意做一期IDEA版的。
Java技术栈
·
2020-04-15 11:53
Java源码
浅析,Long
源码分析,基本上都加载注解上了,如有谬误,请指正,谢谢。jdk1.8.0_161/***auther:jiyx*date:2018/9/18.*/publicclassLongextendsNumberimplementsComparable{/***最小值,-2的63次方*/@NativepublicstaticfinallongMIN_VALUE=0x8000000000000000L;/**
Tomy_Jx_Li
·
2020-04-12 15:55
记一次百度Android开发的面试
备注:快排推荐这篇文章https://www.cnblogs.com/CBDoctor/p/4077574.html2.有看过
Java源码
吗?
qiuqifan
·
2020-04-11 22:25
学习笔记——Java的字节码
当Java源代码成功编译成字节码后,如果想在不同的平台上面运行,则无须再次编译,也就是说
Java源码
只需次编译就可处处运行,这就是“
白菜拉面
·
2020-04-11 18:11
程序兵法:插入排序算法 Java 源版
《程序兵法:
Java源码
的插入排序算法(二)》文章工程:JDK1.8工程名:algorithm-core-learning工程地址:https://github.com/JeffLi1993/algorithm-core-learning
BYSocket泥瓦匠
·
2020-04-11 06:43
java源码
- Semaphore
开篇Semaphore是一种基于计数的信号量。它可以设定一个阈值,基于此,多个线程竞争获取许可信号,做完自己的申请后归还,超过阈值后,线程申请许可信号将会被阻塞。Semaphore可以用来构建一些对象池,资源池之类的,比如数据库连接池,我们也可以创建计数为1的Semaphore,将其作为一种类似互斥锁的机制,这也叫二元信号量,表示两种互斥状态。从源码角度来看,Semaphore的实现方式和Coun
晴天哥_374
·
2020-04-11 03:45
[
Java源码
][并发J.U.C]---阻塞队列LinkedBlockingQueue
前言LinkedBlockingQueue是一个由链表结构组成的有界阻塞队列,按照先进先出的原则对元素进行排序.本文源码:源码地址例子本文先以一个小例子简单看看LinkedBlockingQueue的简单使用.分别有两个类Producer负责产生新数据,Consumer负责消费数据.例子中有两个消费者和三个生产者,每个生产者生成3条数据.packagecom.linkedblockingqueue
nicktming
·
2020-04-11 03:35
Rx
Java源码
分析之变换
RxJava简单来说,是一个很灵活切换线程的裤子.简单试例源码解读试例变换思想图解变换思想总结1、简单试例Observable.just("url")//.map(newFunction(){@OverridepublicLongapply(@NonNullStrings)throwsException{return1l;}}).map(newFunction(){@OverridepublicI
Justson
·
2020-04-11 02:06
Java源码
阅读
源码阅读目的是为了了解Java原理,学习优秀的类设计,整体阅读顺序和侧重主要参考基础类和常用类,参考网上整体归纳如下:包java.lang1)Object12)String13)AbstractStringBuilder14)StringBuffer15)StringBuilder16)Boolean27)Byte28)Double29)Float210)Integer211)Long212)Sh
wx5e8c90bb49422
·
2020-04-08 21:04
Java源码
JavaSE 基础学习之六 —— Java 的反射操作
1.java.lang.Class类参考地址:《
Java源码
解析(2)——Class(1)》《Class类详解》万事万物都是对象。
琦小虾
·
2020-04-08 16:55
tomcat 日志文件乱码问题小计
首先是
java源码
编译在gradle配置中添加了全局的配置编译按照utf-8格式编译:按照utf-8编译但是日志中还是出现了???
5d32ca0383ce
·
2020-04-07 11:47
Java源码
分析-ArrayBlockingQueue
ArrayBlockingQueue是JDK1.5开始concurrent包中提供的并发工具类,是一个基于数组的有界的先进先出队列,如果加入元素时,数组已满,或数组为空时,取元素都会阻塞当前线程,是一个典型的生产者消费者模式。类似的类还有LinkedBlockingQueue,PriorityBlockingQueue。继承关系publicclassArrayBlockingQueueextend
gatsby_dhn
·
2020-04-07 06:02
Java源码
分析——HashMap
HashMap使用一个的数组来保存不同散列值的key以及相应的value。在jkd1.8中,对于相同hashcode形成的bucket,不再按照唯一的链表存储,而是根据bucket的大小,超过一定限制之后将链表转换为红黑树来存储Map.Entry。这样,HashMap的内部数据结构就是数组+链表+红黑树。*jkd源码的版本为1.8.0_05类的结构:publicclassHashMapextend
微辣鸡米饭
·
2020-04-06 12:33
Rx
Java源码
解析:操作符之map
前言RxJava框架运用了装饰设计模式(ps.叫静态代理也行,关于两种设计模式的区别)其中几乎所有的操作符本质是都是newObvservable(OnSubscribef),所以当你进行Obvservable.create().map().lift.subscribe()等各种连点操作后,最原始的Obvservable对象早就被封装了好几层了。。。当然最终调用subscrib()方法的也肯定是最终
Jessewo
·
2020-04-05 15:34
观察者设计模式(四) - 源码中观察者设计模式的使用场景
(一)-定义、角色划分、示例代码观察者设计模式(二)-推拉模式观察者设计模式(三)-Java自带的观察者观察者设计模式(四)-源码中观察者设计模式的使用场景1.源码中观察者设计模式的使用场景1>:Rx
Java
世道无情
·
2020-04-05 12:18
上一页
56
57
58
59
60
61
62
63
下一页
按字母分类:
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
其他