有句英语谚语叫作"Look before you jump",在着手重构前,看看这个更改的影响度,以资决策,是一个不错的主意。
1、查看定义
程序类之间是相互调用的,JBuilder可以方便你查看类、方法、值域的定义,将光标置于某一代码元素上,按Ctrl+Enter快捷键或点击右键,在弹出的菜单中选择Find Definition,JBuilder将定位到该元素的定位处。
2、查看引用
类、方法、值域被定义后,其引用星洒在程序的不同地方,查看定义就象"游子寻根",而查看引用刚好相反,即从元素定义处查找所有的引用该元素的地方。将光标置于元素定义处,按Ctrl+Shift+Enter或都通过右键弹出的菜单,选择Find References,JBuilder将工程中所有的引用列在信息窗格中,如下图所示:
引用以树形方式组织,这些引用以类为分组节点,其下是具体的引用之处。下表列出了树中涉及到图标的说明:
表 2 查询引用结构图标说明
除可以在工程范围内查看引用外,也可以在当前的类范围内查看引用关系:在元素定义处右键单击,在弹出的菜单中选择Find Local References菜单项。
3、查看覆盖方法
在子类或接口的实现类中,将光标定位于覆盖方法处,右键单击,在弹出的菜单中选择Find Overridden Method,将可以查看被当前方法覆盖的祖先类方法。
1、查看定义
程序类之间是相互调用的,JBuilder可以方便你查看类、方法、值域的定义,将光标置于某一代码元素上,按Ctrl+Enter快捷键或点击右键,在弹出的菜单中选择Find Definition,JBuilder将定位到该元素的定位处。
2、查看引用
类、方法、值域被定义后,其引用星洒在程序的不同地方,查看定义就象"游子寻根",而查看引用刚好相反,即从元素定义处查找所有的引用该元素的地方。将光标置于元素定义处,按Ctrl+Shift+Enter或都通过右键弹出的菜单,选择Find References,JBuilder将工程中所有的引用列在信息窗格中,如下图所示:
![]() 图 3 引用查找结果 |
引用以树形方式组织,这些引用以类为分组节点,其下是具体的引用之处。下表列出了树中涉及到图标的说明:
表 2 查询引用结构图标说明
| 查询何种语义的引用 | 图标说明 |
| 类、内部类、接口 | 1) 类的继承体系2) 类型引用:类声明或类对象的实例化。3) 继承类型引用:当前类子孙类或引用这些子类的地方。4) 成员引用:当前类的成员。5) 子孙类成员引用:当前类子孙类的成员。 |
| 方法、构造函数 | 1) 声明:当前方法声明处。2) 直接调用:通过类对象实例调用。3) 间接调用:通过父类或子类对象实例间接调用。 |
| 值域、局部变量 | 1) 写:更改值域或局域变量的地方。2) 读:读值域或局域变量的地方。 |
除可以在工程范围内查看引用外,也可以在当前的类范围内查看引用关系:在元素定义处右键单击,在弹出的菜单中选择Find Local References菜单项。
3、查看覆盖方法
在子类或接口的实现类中,将光标定位于覆盖方法处,右键单击,在弹出的菜单中选择Find Overridden Method,将可以查看被当前方法覆盖的祖先类方法。
着手重构前查看更改影响度是个好主意。介绍了JBuilder的功能,可方便查看类、方法、值域的定义,通过快捷键或右键菜单操作定位;能从元素定义处查找所有引用该元素的地方,可在工程或当前类范围查看;还能查看子类或接口实现类中覆盖方法对应的祖先类方法。

类的继承体系
类型引用:类声明或类对象的实例化。
继承类型引用:当前类子孙类或引用这些子类的地方。
成员引用:当前类的成员。
子孙类成员引用:当前类子孙类的成员。
声明:当前方法声明处。
直接调用:通过类对象实例调用。
间接调用:通过父类或子类对象实例间接调用。
写:更改值域或局域变量的地方。
读:读值域或局域变量的地方。
151

被折叠的 条评论
为什么被折叠?



