遇到这个问题是因为想证明Vector中的get()方法是不是用synchronized关键字修饰的来保证线程安全的方法, 于是在Eclipse里面: 然后选中Vector按F3去查看源码,结果跳出了: OK 直接点击Attach Source 进入之后 WorkSpace location就是在工作 ...
分类:
系统相关 时间:
2017-11-29 20:50:41
阅读次数:
184
用了好久的Java了,从来没有看过jdk的源码,趁着今天有点时间,拿出了jdk的源码看了下,今天先看了关于String的,毕竟开发中String类型使用最广泛。在我们下载安装jdk的时候,部分源码也已经同时存放在我们电脑里了,具体路径为jdk目录下的src.zip压缩包,解压即可。 java.lan ...
分类:
其他好文 时间:
2017-11-21 15:51:06
阅读次数:
219
java语言的学习,研究JDK源码是掌握基本语法之后,提升能力的一个很重要的途径。 本篇内容主要解决以下内容: 1)对Object中的方法进行一个简单的总结; 2)对每个方法进行解读,主要包括注意事项和开发中需要注意的点; 3)简单描述一下Object中这几个方法的作用与java语言中那些特性相关; ...
分类:
编程语言 时间:
2017-10-30 14:41:36
阅读次数:
255
前言 最近开始读JDK源码,所有心得准备总结成一个专栏,JDK Analysis系列的第一篇,就从万众瞩目的ReentrantLock开始吧,而谈到ReentrantLock,就不得不说AQS,它是AbstractQueuedSynchronizer类的简称,Doug Lea上神在JDK1.5将其引 ...
分类:
其他好文 时间:
2017-10-23 12:51:46
阅读次数:
175
eclipse导入JDK源码 前言:这件事情的重要性不言而喻,对于学习和观摩优秀的代码非常的有用,我喜欢想看什么代码都能 Ctrl+鼠标一点 就能够看到,不过这个不常操作,在这里小记一笔,以备后用。(完全是傻瓜式的记录,就是怕自己还需要来回的找操作步骤!) 1:Window——Preferences ...
分类:
系统相关 时间:
2017-10-20 11:49:38
阅读次数:
224
Hashmap 使用java语言进行系统开发时,使用得比较多得数据结构hashmap,它以[key,value],进行数据存储,通过key可以快速找到到对应的value值,但是key,value不能是java的基本类型 (int , float,double,long,short,byte) 必须是 ...
分类:
编程语言 时间:
2017-10-13 10:12:06
阅读次数:
151
主要是想将JDK中涉及到多线程的源码导入到Intellijidea;便于进行源码的注释、跟踪、以及画UML图;主要步骤如下:1、下载JDK源码方式一:直接从下面地址中下载(本人就是采用这种方式)https://github.com/fanhongtao/JDK方式二:从jdk的rt.jar包中获取,例如jdk1.8.0_112\jre\lib\r..
分类:
系统相关 时间:
2017-10-12 22:58:50
阅读次数:
201
1、来源 random.nextInt() 为 java.util.Random类中的方法; Math.random() 为 java.lang.Math 类中的静态方法。 2、用法 产生0-n的伪随机数(伪随机数参看最后注解): 1 2 3 1 3、jdk源码 4、总结 5、注:何谓伪随机数 伪随 ...
分类:
其他好文 时间:
2017-09-28 22:31:20
阅读次数:
236
本系列文章使用的JDK版本为jdk1.8.0_131,一些基础的知识储备:原码、反码、补码,移位,建议参考文章:《原码,反码,补码详解》《Java源码学习系列(三)——Integer》Integer是我们开发过程中最常用的一个类,因此JDK的源码解读就从它开始吧。凡是对Java有点了解的都知道,I..
分类:
其他好文 时间:
2017-09-28 12:53:15
阅读次数:
209
背景 在学习JDK源码的时候,免不了需要调试JDK的源码。 比如:想理解ConcurrentHashMap的put(K k, V v)方法,JDK自带的rt.jar文件是支持断点调试,但是却看不到变量的具体值,对于理解实现非常不方便。 如下: 在map.put(“sdf”, “ac”)处增加断点,然 ...
分类:
其他好文 时间:
2017-09-23 15:27:56
阅读次数:
123