源码的阅读可以提升我们的编程能力,学习大神们的设计。博主是在Mac平台下使用的IDEA进行搭建,在Windows下也大同小异。废话不多说,开搞!!!
阅读JVM创建普通的Java项目即可,操作演示如下图:
创建两个包“source”和“test”,“source”用于存放jdk的源代码,“test”存放自己写的测试样例。
在我们安装Java环境其实就已经有jdk的源码了,如果不知道自己jdk放在哪里的,可以在IDEA中查看路径,操作步骤如下(如果找不到项目管理按钮也可以通过File -> Project Structure… 打开):
文件比较多,IDEA会检测和识别文件,需要点时间。
package test.hashmap; import java.util.HashMap; import java.util.Map; public class HashMapTest { public static void main(String[] args) { Map<String, Double> testMap = new HashMap<>(); testMap.put("0", 0.1); testMap.put("1", 0.2); testMap.put("2", 0.3); testMap.put("3", 0.4); } }
点击运行程序,由于加入进来的文件比较多,编译过程需要比较长时间(很长!)。
如果出现如下图的异常报错,是由于栈内存不够。
打开设置页面,Mac OS用户快捷键:⌘+, Windows用户快捷键:Ctrl+Alt+S
设置完成后,再次运行程序,如果还是报那个问题,建议再设置大一些。
当我们对代码打断点,单步进入,会发现进入不了源码里面,这是因为IDEA不让进入jdk包下的代码。需要我们设置一下。
设置完成后,我们就可以进入源码部分了。
这时候我们再进行调试,就可以进入到jdk源码文件里了,但如果我们需要对文件进行修改,就会发现无法修改,因为这时候其实还是跳进jdk里的src.zip文件里,并不是进入到我们项目中source下的文件。
所以,我们需要修改源码关联到我们项目的文件夹中,操作如下:
完成到这步之后,我们再点击调试,就可以发现那个锁没有了。
OK,完成到这里,我们就可以开始源码的阅读了。