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源码
《实战JAVA虚拟机》编译
JDK源码
(Ubuntu18.04)
折腾了好久,写下步骤吧。初学者就乖乖跟着书本来了,所以先下载一个openJDK,openjdk-7u40-fcs-src-b43_aug_2013然后书上建议用jdk1.6进行编译,这里选择不接受建议,用相同版本的jdk编译,JavaSEDevelopmentKit7u40,结果出现了错误,所以还是改用JavaSEDevelopmentKit6u45,和书上一样就比较安心了。但是又翻到这篇文章ht
qq_39479426
·
2020-07-31 22:54
HotSpot和OpenJDK入门
HotSpot源码介绍首先让我们看看
JDK源码
和它所包含的相关Java概念的实现。
kobejayandy
·
2020-07-31 19:15
Java
精华文章
jdk源码
分析(四)——ArrayList
ArrayList可以说是我们在java中最经常使用的数据结构之一了,它为我们提供了方便灵活的可变长度列表实现,并可以高效的存取。因此,作为一个如此亲密的朋友,我们自然是要走近它,一探究竟了。一.类定义ArrayList位于java.util包,其定义如下:publicclassArrayListextendsAbstractListimplementsList,RandomAccess,Clon
自由水鸟
·
2020-07-31 18:28
Oracle JDK 和 OpenJDK 有什么区别?
OpenJDK是Sun在2006年末把Java开源而形成的项目,这里的“开源”是通常意义上的源码开放形式,即源码是可被复用的,例如IcedTea、UltraViolet都是从Open
JDK源码
衍生出的发行版
emprere
·
2020-07-31 17:34
IDEA查看类图(接口的实现/类的继承关系)
在
JDK源码
中找到Iterator集合的祖宗根须下图指示(快捷键Ctrl+Shift+Alt+u)别慌,还有一个小插曲(选第一个)这时我们看到类图界面这里可以添加类图关系(快捷键:Ctrl+Alt+b)
程序员劝退师-TAO
·
2020-07-31 13:02
其他
openJDK下载
的项目链接:http://hg.openjdk.java.net/,如下图1所示图1可以看到有openJDK6、openJDK7、openJDK8、openJDK9、openJDK102.下载open
JDK
小咪的农场
·
2020-07-31 10:38
学习心得
下载openJDK的方法
日常开发中,我们要学习
jdk源码
或者开发的时候需要深入了解到
jdk源码
的时候,发现从oracle官网下载的jdk下的src.zip源码并不完整。
choy9999
·
2020-07-30 23:12
http://download.java.net/openjdk/jdk7下载open
jdk源码
的网站的bug
获取Open
JDK源码
大致有两种方式,其中一种是通过Mercurial代码版本管理工具从Repository中直接取得源码http://hg.openjdk.java.net第二种就是从网站上下载:http
愤怒的苹果ext
·
2020-07-30 23:15
java
容器 - ConcurrentHashMap为何不支持null键和null值
为何不支持null键和null值背景最近在梳理总结《集合-常用Map之间区别》,其中有一点就是HashMap是支持null键和null值,而ConcurrentHashMap是不支持的;后来查看了一下
jdk
weixin_33713350
·
2020-07-30 20:42
JDK源码
之LinkedBlockingQueue(源码注释)
LinkedBlockingQueue,基于链表实现的先进先出队列,与ArrayBlockingQueue相比,LinkedBlockingQueue的重入锁被分成两部分,分别对应存值和取值(被称作双锁队列算法),因此可以同时进行读操作和写操作,所以理论上吞吐量超过ArrayBlockingQueue。主要成员变量/***链表节点类*/staticclassNode{Eitem;Nodenext;
Horsleyli
·
2020-07-30 18:44
JDK源码
JDK源码
之BlockingQueue(源码注释)
在多线程环境中,经常会用到“生产者-消费者”模式,负责生产的线程要把数据交给负责消费的线程,那么就需要一个数据共享容器,由生产者存入,消费者取出,这个时候就需要队列(Queue)来实现该仓库。在JavaConcurrent包发布之前,生产消费模式需要我们自己维护阻塞队列,但是自己实现的队列往往会在性能和安全方面存在缺陷,JavaConcurrent包提供了BlockingQueue接口及实现类来实
Horsleyli
·
2020-07-30 18:13
JDK源码
java
queue
队列
JDK源码
学习手册(一)
#
JDK源码
学习(准备篇)本文为菜鸟整理文章,在学习过程中根据自己的学习过程和逻辑点将现有知识进行整合,有问题可评论留言,谢谢!
青黄接不接?
·
2020-07-30 17:25
菜鸟.女.新手.程序员
杂食者
对什么都感兴趣系列
学习手册
资源整理
新手上路
路径导航
JDK源码
阅读计划(Day10) ConcurrentHashMap 扩容,计数部分
扩容Hash表的扩容一般分为:哈希数组的扩容一般是建立一个原来数组大小两倍的数组,通常由单线程完成数据迁移把旧数组中的各个槽的结点重新分配到新的table中。通常涉及到Key值的rehash而HashMap与ConcurrentHashMap并不会重新计算每个key的hash值,而是数组扩容后,新的索引要么在原idx,要么在idx+n(n为扩容前数组容量)这种处理方式的好处:方便多线程同时进行数据
小凯Alex
·
2020-07-30 17:09
JAVA
ThreadPoolExecutor
JDK源码
解读
java.util.concurrent.ThreadPoolExecutor(请特别注意代码中我的中文代码注释(是我笔记))(想自学习编程的小伙伴请搜索圈T社区,更多行业相关资讯更有行业相关免费视频教程。完全免费哦!)1.如下创建固定线程池后,先扔5个,隔5秒在扔11个,隔5秒再扔10个,任务执行时间假设很长30分钟,执行顺序是怎么样的?那又或者随机很长很短呢?newThreadPoolExec
圈T社区
·
2020-07-30 17:58
圈T社区
JDK源码
解析基础篇-String、StringBuilder、StringBuffer
首先向搞懂常量池的知识点:触摸Java常量池常量池技术java.lang包的最后一篇基础篇。搞完这篇就开始集合框架和并发包等内容。Sting、StirngBuilder、StringBuffer的内容很早之前写过String、StringBuffer和StringBuilder的区别和应用场景,但写的太简单了。这次再重新梳理一下这部分内容,留作以后复习。在java语言中,用来处理字符串的的类常用的
冷面寒枪biu
·
2020-07-30 17:31
源码解析
JDK源码
分析:ConcurrentHashMap(JDK1.7和JDK1.8),HashTable与Collections.synchronizedMap
概述ConcurrentHashMap是线程安全的HashMap,提供与HashTable一样的线程安全特性。与HashMap不同的是,除了线程安全之外,HashMap的key和value都支持null,而HashTable和ConcurrentHashMap的key和value都不允许是null。与HashTable不同的是,ConcurrentHashMap不需要对所有需要线程安全保证的方法使
服务端开发
·
2020-07-30 16:27
Java
【
JDK源码
分析系列】ConcurrentHashMap 源码分析 -- 增、删、查操作
【
JDK源码
分析系列】ConcurrentHashMap源码分析--增、删、查操作【0】ConcurrentHashMap整体架构构成说明采用transientvolatileHashEntry[]table
奋斗企鹅copper
·
2020-07-30 16:19
JDK
数据结构
JDK源码
解析之ArrayBlockingQueue
前言:之前介绍的关于Queue的实现类,LinkedList、PriorityQueue都是非线程安全的队列,那么有没有线程安全的Queue实现类呢?当然是有的,在java.util.concurrent中有几个关于Queue的线程安全实现/***@seejava.util.concurrent.ArrayBlockingQueue*@seejava.util.concurrent.LinkedB
恐龙弟旺仔
·
2020-07-30 16:16
CoreJava
JDK源码解析
JDK源码
之HashMap与ConcurrentHashMap区别
HashMap结构:数组加链表。基本插入步骤(不包含扩容)1.通过数组长度n-1和插入key的hash求余,即(n-1)&hash得到准备放入的数组节点中,2.如果当前数组节点中无数据,则直接放入node3.如果有值,则放入node链表尾部查找步骤1.通过hash求余查询到数组节点2.从前到后遍历node节点,比对node中hash值与key值必须相等则匹配成功返回。相关参数publicclass
lizz666
·
2020-07-30 15:37
JDK
Jdk源码
详解之ArrayBlockingQueue类
Jdk源码
详解之ArrayBlockingQueue类/**Executesthegiventasksometimeinthefuture.Thetaskmayexecuteinanewthreadorinanexistingpooledthread
LawsonAbs
·
2020-07-30 15:00
#
Java
JDK源码解读
JDK源码
之ArrayBlockingQueue(源码注释)
ArrayBlockingQueue是基于数组实现的有界BlockingQueue,该队列满足先入先出(FIFO)特性。它是由一个固定大小的数组保存元素,一旦创建好以后,容量就不能改变了。队满时,存数据的操作会别阻塞,队空时,取数据的操作会被阻塞。主要成员变量:publicclassArrayBlockingQueueextendsAbstractQueueimplementsBlockingQu
Horsleyli
·
2020-07-30 13:31
JDK源码
JDK源码
分析:ConcurrentHashMap(JDK1.8版本)
主文章:
JDK源码
分析:ConcurrentHashMap(JDK1.7和JDK1.8),HashTable与Collections.synchronizedMap概述在JDK1.7主要通过定义Segment
服务端开发
·
2020-07-30 13:52
Java
JDK1.8 ArrayBlockingQueue源码分析
目的:本文通过分析
JDK源码
来对比ArrayBlockingQueue和LinkedBlockingQueue,以便日后灵活使用。
代码菜鸟旺仔
·
2020-07-30 13:30
JAVA
JDK中多线程之JUC线程池的
JDK源码
解读配合大神的一起看,秒懂。
一、“JUC线程池”01之线程池架构1)概要前面分别介绍了"Java多线程基础"、"JUC原子类"和"JUC锁"。本章介绍JUC的最后一部分的内容——线程池。内容包括:线程池架构图线程池示例2)线程池架构图线程池的架构图如下:A.Executor它是"执行者"接口,它是来执行任务的。准确的说,Executor提供了execute()接口来执行已提交的Runnable任务的对象。Executor存在
MARS用了8年
·
2020-07-30 13:52
jdk
JDK源码
-HashMap死锁分析
开篇明志和前一片文章《
JDK源码
-HashMap》的写作目的差不多,在创作ConcurrentHashMap这片文章的时候,需要和HashMap做对比,《
JDK源码
-HashMap》着重介绍了内部实现原理
zxca368
·
2020-07-30 13:41
JDK源码阅读
Java并发
Java
Java并发合集
JDK源码
分析--HashMap深入理解
一、实现原理以JDK1.7源码为例进行分析(一)Hashing的概念将字符串转换成固定长度(一般是更短的长度)的数值或索引值的方法,也称为散列法或哈希法。常用于数据库中建索引,或是用于各种加解密算法中。完成转换功能的函数一般称为哈希函数,哈希函数设计的好坏将直接影响到哈希表的优劣。(二)哈希表可高效进行增加、删除、查找等操作的数据结构,不考虑哈希冲突的情况下,仅需要一次定位即可完成,时间复杂度为O
wolfshadow.cn
·
2020-07-30 12:16
JDK源码
JDK源码
分析-HashMap(1)
概述HashMap是Java开发中最常用的容器类之一,也是面试的常客。它其实就是前文「数据结构与算法笔记(二)」中「散列表」的实现,处理散列冲突用的是“链表法”,并且在JDK1.8做了优化,当链表长度达到一定数量时会把链表转为红黑树。因此,JDK1.8中的HashMap实现可以理解为「数组+链表+红黑树」。内部结构示意图:HashMap的继承结构和类签名如下:publicclassHashMape
o对酒当歌
·
2020-07-30 11:42
写给Java程序员看的,CPU 上下文切换、用户态、内核态、进程与线程上下文切换
1、概述
JDK源码
中很多Native方法,特别是多线程、NIO部分,很多功能需要操作系统功能支持,作为Java程序员,如果要理解和掌握多线程和NIO等原理,就需要对操作系统的原理有所了解。
会说话的丶猫
·
2020-07-30 10:00
BigInteger类实例的构造过程——
JDK源码
解析
最近看了下JDK1.6版本的BigInteger类,仔细研究了下大整数实例的构造过程,现在把自己的所得所想分享给大家.首先,为什么需要大整数类?简单的说就是因为内部的数据类型能表示的最大数是64位长度,当需要更大长度位数的数据时,基本的数据类型无法处理.跟密码学相关的加密算法常涉及到好几百位的整数的加减乘除,因此需要设计一种有效的数据结构能够满足这样的需求.其实要实现大整数类也不难,简单一想,我们
zhaoyunfullmetal
·
2020-07-30 06:21
JDK源码解析
jdk源码
解析三之ConcurrentHashMap
文章目录ConcurrentHashMapput初始化扩容getaddCountreplace#remove总结:什么时候扩容?JDK1.8放弃分段锁jdk1.8的map实现为什么不用ReentrantLock而用synchronized?多个线程又是如何同步处理的呢?ConcurrentHashMap//使用了unSafe方法,通过直接操作内存的方式来保证并发处理的安全性,使用的是硬件的安全机制
Nuan_Feng
·
2020-07-29 16:48
jdk源码
jdk源码
解析二之HashMap
这里写自定义目录标题HashMapputremovereplaceget扩容resize迭代器总结什么时候采用红黑树?为什么每次扩容后,是2的幂次方?为什么扩容后,相同的在原位置保存,而不同的则当前索引+之前原位置索引保存?为啥用尾插法?为什么线程不安全?HashMapHashMap的loadFactor为什么是0.75?主要涉及到泊松分布的概念,猝!!!一个bucket空和非空的概率为0.5,通
Nuan_Feng
·
2020-07-29 16:48
jdk源码
jdk源码
解析三之ThreadLocal
文章目录ThreadLocalset初始化ThreadLocalMapset赋值重新使用失效节点清空无效节点扩容getremove总结为何存在内存泄漏问题?ThreadLocalsetpublicvoidset(Tvalue){//当前线程的.ThreadLocalMap绑定了当前ThreadLocal对象和value//获取当前线程Threadt=Thread.currentThread();/
Nuan_Feng
·
2020-07-29 16:48
jdk源码
jdk源码
解析五之Executor框架
文章目录ExecutorExecutorServiceScheduledExecutorServiceAbstractExecutorService总结ThreadPoolExecutor成员变量以及方法构造executetryTerminateinterruptIdleWorkersrunshutdownshutdownNow总结ScheduledThreadPoolExecutor//todo
Nuan_Feng
·
2020-07-29 16:47
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源码
Java小知识(01)私有构造方法为什么要抛异常?
不知道有没有小伙伴浏览过
JDK源码
,发现有些私有构造方法里也要抛出异常。那么疑问来了?构造方法都私有了。也不能调用,抛异常不是多此一举吗?答案是否定的。
索金星
·
2020-07-29 14:14
java
反射
jdk
class
JDK源码
-Collection-contains()以及containsAll()
contains()方法是不是要比你自己写循环,执行起来效率高呢?我们来看一下源码。源码如下:publicbooleancontains(Objecto){Iteratorit=iterator();if(o==null){while(it.hasNext())if(it.next()==null)returntrue;}else{while(it.hasNext())if(o.equals(it
赵大笨笨
·
2020-07-29 11:30
jdk源码
程序猿杂谈之小白离开校园初入职场(一)
作为一名学"抓青蛙"的大三狗,即将离开校园,带着许多的抱负和理想,学了三年即将派上用场,想想就激动,可以大显身手,前提是底子得硬,没学过数据结构和算法,
jdk源码
没读过,哪来的底子,普通的大专院校,这些课程都木有
happy的程序猿
·
2020-07-29 11:33
程序人生
OpenJDK的下载和编译过程
文章目录一、背景二、下载Open
JDK源码
三、编译jdk的环境准备3.1BootstrapJDK准备3.2autoconf安装3.3ccache和freetype安装四、编译OpenJDK五、注意事项5.1
coldice0521
·
2020-07-28 23:23
Java
深入
JDK源码
之ThreadLocal类
2019独角兽企业重金招聘Python工程师标准>>>##ThreadLocal概述##学习JDK中的类,首先看下JDKAPI对此类的描述,描述如下:该类提供了线程局部(thread-local)变量。这些变量不同于它们的普通对应物,因为访问某个变量(通过其get或set方法)的每个线程都有自己的局部变量,它独立于变量的初始化副本。ThreadLocal其实就是一个工具类,用来操作线程局部变量,T
weixin_34336292
·
2020-07-28 19:41
在eclipse中进行HotSpot的源码调试
在阅读Open
JDK源码
的过程中,经常需要运行、调试程序来帮助理解。我们现在已经可以编译出一个调试版本HotSpot虚拟机,禁用优化,并带有符号信息,这样就可以使用GDB来进行调试了。
weixin_30760895
·
2020-07-28 17:00
ubuntu源码安装java 8
Ubuntu安装
jdk源码
通过ppa(源)方式安装通过官网下载安装包安装ppa源安装添加ppaforbefore14.04:sudoapt-getinstallpython-software-propertiesforafter14.04
funaiy
·
2020-07-28 16:25
输入流InputStream的reset()和mark()方法注意事项
今天写一个读写程序,运用到InputStream的reset方法是发现竟然失败了,然后查了一下
JDK源码
,发现BufferInputStream重写了父类FilterInputStream的mark和resetf
weixin_30319153
·
2020-07-28 16:55
JVM进阶2--VS2010单步调试Hotspot
目录结构open
jdk源码
组织结构HotSpot源码包结构创建hotspotVS2010工程利用VS2010单步调试具体的openjdk编译过程可以参考https://blog.csdn.net/u014106644
暗夜猎手-大魔王
·
2020-07-28 14:34
JVM进阶
vs2010
hotspot
单步调试
设计模式--适配器模式(JDK中的应用)
JDK源码
中应用了很多设计模式,在学习源码的遇到的时候会一一进行学习。闲言少叙,开始适配器模式。
冷面寒枪biu
·
2020-07-28 14:45
设计模式
如何下载
jdk源码
、hotspot源码
jdk的开源主要体现openjdk项目上,下面简单介绍一下jdk及其子项目hotspot的源码下载方式。首先我们进入网址:http://hg.openjdk.java.net,这个网址下面列出了所有开源的openjdk项目,从中我们可以看到jdk项目。然后我们以jdk8u为例说明,该页面下列出了很多个版本的jdk8源码,读者可根据需要下载相应的版本,图中红框标注的就是我们要下载的hotspot、j
东方雨倾
·
2020-07-28 14:08
Java
jdk源码
hotspot源码
源码下载
浅谈volatile关键字
Java的volatile关键字在
JDK源码
中经常出现,但是对它的认识只是停留在共享变量上,今天来谈谈volatile关键字。
IT_tangh
·
2020-07-28 13:38
java
windows7构建openjdk编译环境
下载open
jdk源码
采用直接包下载,地址http://www.java.net/download/openjdk/jdk8/promoted/b132/openjdk-8-src-b132-03_mar
tszxlzc
·
2020-07-28 12:23
Java
jdk源码
解析之——java.util源码详解
jdk源码
解析之——java.util源码详解java.util包的util自然指的就是utility(实用),就是说,这个包中定义的class和interface为我们提供了一些实用的工具可以辅助我们的开发
shyknight
·
2020-07-28 11:39
jdk源码解析
高思教育2(现爱学习)Java开发岗位 面经 2019.10.25(秋招)
3.你有看过除过
jdk源码
外的开源框架吗?你用过
Coder米
·
2020-07-28 08:22
面经2019秋招
ThreadLocal浅析
我们来看下
JDK源码
中是如何解释的:Thisc
小小码农dzx
·
2020-07-28 07:39
android
上一页
14
15
16
17
18
19
20
21
下一页
按字母分类:
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
其他