关于灵活使用和重写源码的思路

来源:6-5 谈谈ClassLoader

莨菽菽

2020-04-25

http://img1.sycdn.imooc.com/szimg/5ea43bc109b35b7510760485.jpg

老师好,可能是我还没有系统去训练自己阅读源码,平时写代码不管是写公用工具还是业务总喜欢重新按自己的想法造轮子,不会灵活找相关的源码去利用重写,除非真的写不出来才去找,不知道老师写的时候是什么思路

像这里老师就知道要继承ClassLoader去重写方法,然后也知道要用findClass(),然后在该方法里面知道要用defineClass(),知道系统是先调用findClass()再去调用defineClass(),

问题是:平时老师写都是像视频一样点进去看源码,就能很快定位到1.要用哪个;2.怎么用;3.什么时候被系统调用?

因为我看源码类的方法都超多的,很懵。。想问下老师什么思路和怎么快读找到的,然后知道什么地方去用


写回答

1回答

翔仔

2020-04-26

同学好,其实可以直接在方法执行的地方设置断点,然后通过调用栈去查看入口,并且,看源码是一个经验积累的过程,主要的诀窍在于查询入口,但是方法并没有特别具体,主要是看经验。同学可以看看我的spring源码课,被虐一段时间后找到入口应该比较简单,主要就是站在设计者的角度去看问题:)

https://coding.imooc.com/class/420.html


0
1
莨菽菽
非常感谢!
2020-04-26
共1条回复

剑指Java面试-Offer直通车 百度资深面试官授课

招聘季即将到来,让百度资深面试官来为你的高薪Offer保驾护航

8427 学习 · 1870 问题

查看课程