• 一点一点看JDK源码(二)java.util.List

    时间:2024-01-02 23:47:58

    一点一点看JDK源码(二)java.util.Listliuyuhang原创,未经允许进制转载本文举例使用的是JDK8的API目录:一点一点看JDK源码(〇)1.综述List译为表,一览表,列表,目录,名单,有种index的意味在里头编程语言中的List是强调线性,可以简单的视为一个双向串行的集合L...

  • JDK1.8源码(一)——java.util.ArrayList

    时间:2024-01-02 23:40:13

     ArrayList 定义ArrayList 是一个用数组实现的集合,支持随机访问,元素有序且可以重复。 public class ArrayList<E> extends AbstractList<E> implements List<E>, R...

  • HashMap实现原理及源码分析之JDK8

    时间:2024-01-01 21:09:25

    继续上回HashMap的学习 HashMap实现原理及源码分析之JDK7转载 Java8源码-HashMap  基于JDK8的HashMap源码解析  【jdk1.8】HashMap源码分析一、HashMap简单介绍首先看下HashMap在JDK8下数据结构:JDK 8 之前:JDK 8 之前 Ha...

  • linux下源码安装jdk1.8和tomcat8.5

    时间:2023-12-31 09:22:22

    Java是目前可移植性较高的语言,相当火热,tomcat运行就需要Java语言环境0.java简介1)tomcat运行需要对应的Java环境,Java环境通过安装jdk来获得2)为了防止兼容性问题,tomcat和Java的版本最好对应,一般java-1.8对应tomcat8,java-1.7对应to...

  • JDK Collection 源码分析(1)—— Collection

    时间:2023-12-24 18:11:02

    JDK Collection  JDK Collection作为一个最顶层的接口(root interface),JDK并不提供该接口的直接实现,而是通过更加具体的子接口(sub interface)的实现。该接口存在是因为有时候需要更加通用的Collection来对元素进行操作,比如一个方法,接收...

  • String,StringBuffer和StringBuilder源码解析[基于JDK6]

    时间:2023-12-21 20:31:15

    最近指导几位新人,学习了一下String,StringBuffer和StringBuilder类,从反馈的结果来看,总体感觉学习的深度不够,没有读出东西。其实,JDK的源码是越读越有味的。下面总结一下我读这些源码的收获吧。注意:虽然源码的版本是JDK6,但是个人觉得学习这个版本的源码对于理解数据结构...

  • 从源码看JDK提供的线程池(ThreadPoolExecutor)

    时间:2023-12-20 09:18:15

    一丶什么是线程池(1)博主在听到线程池三个字的时候第一个想法就是数据库连接池,回忆一下,我们在学JavaWeb的时候怎么理解数据库连接池的,数据库创建连接和关闭连接是一个比较耗费资源的事情,对于那些数量多且时间短暂的任务,会导致频繁获取和释放连接,这样使得处理事务的效率大大降低,多以我们创建一个连接...

  • 【转载】MacOS下IntelliJ IDEA关联JDK1.8源码

    时间:2023-12-19 16:21:43

    原文地址: MacOS下IntelliJ IDEA关联JDK1.8源码1 打开jdk设置,找到具体添加的地方2 找到自己jdk的源码位置替换掉3 如果没有源码或者源码没有下载解压,自己下载解压,Mac下安装的自带src.zip和javax-src.zip解压好后,再添加4 自带的jdk的zip包里面...

  • JDK1.8源码分析之HashMap(一) (转)

    时间:2023-12-17 13:36:55

    一、前言在分析jdk1.8后的HashMap源码时,发现网上好多分析都是基于之前的jdk,而Java8的HashMap对之前做了较大的优化,其中最重要的一个优化就是桶中的元素不再唯一按照链表组合,也可以使用红黑树进行存储,总之,目标只有一个,那就是在安全和功能性完备的情况下让其速度更快,提升性能。好...

  • JDK源码学习系列02----AbstractStringBuilder

    时间:2023-12-14 18:36:43

     JDK源码学习系列02----AbstractStringBuilder因为看StringBuffer 和 StringBuilder 的源码时发现两者都继承了AbstractStringBuilder,并且很多方法都是直接super的父类AbstractStringBuilder的方法,所以还是...

  • 绝对良心提供百度网盘的jdk1.8源码下载包含sun包的

    时间:2023-12-10 19:51:11

    但是openjdk网站有提供的:http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/file/6bfaecb8ff77/src/share/classes/或者直接用百度网盘下载:https://pan.baidu.com/s/1JaX50ETPaneQ-xFut3

  • jdk1.8源码Synchronized及其实现原理

    时间:2023-12-10 19:02:41

    一、Synchronized的基本使用关于Synchronized在JVM的原理(偏向锁,轻量级锁,重量级锁)可以参考 :  http://www.cnblogs.com/dennyzhangdd/p/6734638.htmlSynchronized是Java中解决并发问题的一种最常用的方法,也是最...

  • 【集合框架】JDK1.8源码分析之Comparable && Comparator(九)

    时间:2023-12-06 15:19:27

    一、前言在Java集合框架里面,各种集合的操作很大程度上都离不开Comparable和Comparator,虽然它们与集合没有显示的关系,但是它们只有在集合里面的时候才能发挥最大的威力。下面是开始我们的分析。二、示例在正式讲解Comparable与Comparator之前,我们通过一个例子来直观的感...

  • JAVA常用集合源码解析系列-ArrayList源码解析(基于JDK8)

    时间:2023-12-02 19:15:26

    文章系作者原创,如有转载请注明出处,如有雷同,那就雷同吧~(who care!)一、写在前面这是源码分析计划的第一篇,博主准备把一些常用的集合源码过一遍,比如:ArrayList、HashMap及其对应的线程安全实现,此文章作为自己相关学习的一个小结,记录学习成果的同时,也希望对有缘的朋友提供些许帮...

  • JDK源码之Lock接口

    时间:2023-11-30 20:11:01

    public interface Lock { //阻塞的获取锁,如果获取到锁,从该方法返回 void lock(); //可中断的获取锁,该方法会响应中断,在锁的获取中可以中断当前线程 void lockInterruptibly() throws InterruptedE...

  • JDK源码解读之toUnsignedString

    时间:2023-11-29 22:04:46

    我们知道,所有整数都是通过二进制编码的形式存储在内存中的。比如32位的整数,最高位是符号位,0代表正数,1代表负数。那么怎么才能够将整数的二进制编码形式打印出来呢?Integer类提供了一个公有静态方法toBinaryString能够达到这一目的。我们来看看这段源码:public static St...

  • HashMap源码解析(JDK1.8)

    时间:2023-11-27 13:07:03

    package java.util; import sun.misc.SharedSecrets; import java.io.IOException; import java.io.InvalidObjectException; import java.io.Serializable; imp...

  • Java日期时间API系列8-----Jdk8中java.time包中的新的日期时间API类的LocalDate源码分析

    时间:2023-11-22 23:22:32

    目录0.前言1.TemporalAccessor源码2.Temporal源码3.TemporalAdjuster源码4.ChronoLocalDate源码5.LocalDate源码6.总结0.前言通过前面Java日期时间API系列6-----Jdk8中java.time包中的新的日期时间API类中主...

  • 【集合框架】JDK1.8源码分析之HashMap(一)

    时间:2023-11-17 11:02:23

    一、前言在分析jdk1.8后的HashMap源码时,发现网上好多分析都是基于之前的jdk,而Java8的HashMap对之前做了较大的优化,其中最重要的一个优化就是桶中的元素不再唯一按照链表组合,也可以使用红黑树进行存储,总之,目标只有一个,那就是在安全和功能性完备的情况下让其速度更快,提升性能。好...

  • 【JUC】JDK1.8源码分析之CyclicBarrier(四)

    时间:2023-11-16 18:05:23

    一、前言有了前面分析的基础,现在,接着分析CyclicBarrier源码,CyclicBarrier类在进行多线程编程时使用很多,比如,你希望创建一组任务,它们并行执行工作,然后在进行下一个步骤之前等待,直至所有的任务都完成,和join很类似,下面,开始分析源码。二、CyclicBarrier数据结...