CSDNRGY
2016-12-23 00:46
采纳率: 99.3%
浏览 3.0k
已采纳

如何去阅读jdk的源码?

http://www.importnew.com/16599.html

例如这篇文章的作者就是通过阅读jdk的源码来得到一些结论

这些人都是如何去阅读的?

为什么我看源码,无法获取到有效的信息呢?

阅读源码之前是否需要具备某些条件呢?

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • 看山 2016-12-23 03:18
    已采纳

    我个人的观点是从功能入口开始看源码,比如博文里说的HashMap,常用的就是put、get、contains之类的方法,那就可以先看这些方法是怎么做的。
    如果看的有问题,可以再从构造方法开始看。
    其实就是,你怎么用、从哪开始用的,就从哪入手。
    当然大牛的源码都是各种可扩展,所以,有写地方不明白可以先记下来,然后跳过看后面的,没准就明白了前面的问题了。
    说到具备的条件,其实就是最基本的一些数据结构需要知道,什么数组、链表之类的,这些都是很基础的数据结构知识

    打赏 评论
  • miaoch 2016-12-23 01:04

    我只是点进去看了下标题。
    讲一下我的看法吧。阅读源码嘛。首先那HashMap做例子
    最重要的当然是去看看 HashMap 中的 put 和 get方法是怎么写的, 其次还有数据是以什么形式存储的
    还有它是怎么扩容的
    带着这样的思考 你去看源码 你看这put 或者 get 你就会发现这些方法里面 还牵扯到源码中其他方法。
    如此就不得不把这个类的所有变量加方法都看一遍,还有实现的Map接口又是怎么样的如此如此。
    这样就能get到有用的信息了。
    然后 就会思考 平常说TreeMap 和 HashMap 的有序和无序性质。你通过查询他们的源码就可以自己探索了。

    再其次,还有常用的ArrayList 这样的 还有LinkedList 你不想看看他们的区别吗 带着这样的思考去读代码
    最后,其实我也就说说,我也没仔细看过

    2 打赏 评论
  • 超人汪小建(seaboat) 2016-12-26 00:32

    如果是jvm可直接下Hotspot的源码,也包含jdk

    打赏 评论

相关推荐 更多相似问题