本帖最后由 pig2 于 2014-6-7 17:42 编辑
问题导读: 1.如何查看一个基类有哪些派生类? 2.一个方法被其他哪些方法调用? 3.如何快速查找类对象? 介绍在Eclipse下阅读Hadoop源代码的一些技巧,比如:如何查看一个基类有哪些派生类,一个方法被其他哪些方法调用等。
(1)查看一个基类或接口的派生类或实现类 在Eclipse中,选中某个基类或接口名称,右击,在弹出的快捷菜单中选择“Quick Type Hierarchy”,可在新窗口中看到对应的所有派生类或实现类。 例如,如图1-4所示,打开hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java目录下org.apache.hadoop.mapred包中的InputFormat.java文件,查看接口InputFormat的所有实现类,结果如图1-5所示。
(2)查看函数的调用关系 在Eclipse中,选中某个方法名称,右击,在弹出的快捷菜单中选择“Open Call Hierarchy”,可在窗口“Call Hierarchy”中看到所有调用该方法的函数。
例如,如图1-6所示,打开hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java目录下org.apache.hadoop.mapred包中的Task.java文件,查看调用getJobID方法的所有函数,结果如图1-7所示。
(3)快速查找类对象的相关信息 与前两个小节类似,选中类对象,右击,在弹出的快捷菜单中选择“Open Declaration”,可跳转到类定义;选择“Quick Outline”,可查看类所有的成员变量和成员方法,具体细节在此不做详细介绍,读者自行尝试。
|