摘要 | 第1-9页 |
ABSTACT | 第9-11页 |
插图索引 | 第11-12页 |
第1章 绪论 | 第12-20页 |
1.1 研究背景 | 第12-15页 |
1.1.1 程序切片 | 第12页 |
1.1.2 程序切片技术发展史 | 第12-14页 |
1.1.3 包含异常处理的 Java程序切片 | 第14-15页 |
1.2 程序切片技术的研究现状 | 第15-18页 |
1.2.1 当前研究中的问题 | 第15-16页 |
1.2.2 国内的研究 | 第16-17页 |
1.2.3 国外项目 | 第17-18页 |
1.3 本课题的研究内容 | 第18-20页 |
第2章 Java系统依赖图 | 第20-32页 |
2.1 Java语言的面向对象特性 | 第20-21页 |
2.1.1 封装性 | 第20-21页 |
2.1.2 继承性 | 第21页 |
2.1.3 多态性和动态绑定 | 第21页 |
2.2 Java系统依赖图的基本组成模型 | 第21-23页 |
2.3 Java系统依赖图的基本语法语义 | 第23-26页 |
2.3.1 结点 | 第23-24页 |
2.3.2 边 | 第24-26页 |
2.4 基本问题的解决策略 | 第26-32页 |
2.4.1 程序预处理 | 第26页 |
2.4.2 结点 | 第26-27页 |
2.4.3 方法依赖图 | 第27-28页 |
2.4.4 类依赖图 | 第28-32页 |
第3章 视为方法策略处理异常结构 | 第32-40页 |
3.1 Java的异常处理机制 | 第32-34页 |
3.1.1 使用try/catch/finally | 第32页 |
3.1.2 抛出异常 | 第32-33页 |
3.1.3 异常的类型 | 第33页 |
3.1.4 处理多个异常 | 第33-34页 |
3.2 异常处理结构对系统依赖图的的影响 | 第34-37页 |
3.2.1 自然数程序 | 第34-35页 |
3.2.2 异常对控制流分析的影响 | 第35-36页 |
3.2.3 异常对数据流的影响 | 第36页 |
3.2.4 异常对控制依赖的影响 | 第36-37页 |
3.3 异常结构的处理策略 | 第37-39页 |
3.3.1 数据流的处理 | 第37-39页 |
3.3.2 控制流的处理 | 第39页 |
3.4 小结 | 第39-40页 |
第4章 增加结点策略及主要算法 | 第40-55页 |
4.1 TTAM策略中的问题 | 第40页 |
4.2 AREN方法处理异常结构 | 第40-44页 |
4.2.1 抛出异常方法的处理 | 第41-42页 |
4.2.2 抛出异常调用点的处理 | 第42-43页 |
4.2.3 抛出异常的调用方法的处理 | 第43-44页 |
4.3 系统依赖图的构造及主要算法 | 第44-51页 |
4.3.1 系统依赖图的构造步骤 | 第44-45页 |
4.3.2 方法内语句结点信息的存储关系 | 第45-47页 |
4.3.3 方法依赖图(MDG)的构造 | 第47-51页 |
4.4 切片算法 | 第51页 |
4.5 相关工作 | 第51-54页 |
4.6 小结 | 第54-55页 |
第5章 Java程序切片系统设计与实现 | 第55-69页 |
5.1 JTB工具简介 | 第55-56页 |
5.1.1 关于 JTB | 第55页 |
5.1.2 产生的文件 | 第55-56页 |
5.1.3 自动产生的类 | 第56页 |
5.2 系统的设计 | 第56-59页 |
5.2.1 系统框架 | 第57-58页 |
5.2.2 功能模块 | 第58-59页 |
5.3 系统的实现 | 第59-69页 |
5.3.1 文件管理模块的实现 | 第59-61页 |
5.3.2 词法语法分析模块实现 | 第61页 |
5.3.3 信息存储模块实现 | 第61-64页 |
5.3.4 类层次模块图构造模块的实现 | 第64页 |
5.3.5 方法调用图构造模块的实现 | 第64-65页 |
5.3.6 方法控制流图构造模块的实现 | 第65页 |
5.3.7 方法控制依赖图构造的实现 | 第65-66页 |
5.3.8 方法内数据流图构造模块 | 第66-67页 |
5.3.9 方法间数据流图的构造 | 第67-68页 |
5.3.10 程序切片的实现 | 第68-69页 |
结论 | 第69-71页 |
参考文献 | 第71-75页 |
致谢 | 第75-76页 |
附录A攻读学位期间发表的论文和参加的项目 | 第76-77页 |
附录B Java源程序 | 第77-79页 |
附录C 类层次图 | 第79-80页 |
附录D 方法调用图 | 第80-81页 |
附录E 方法控制流图 | 第81-82页 |
附录F 方法控制依赖图 | 第82-83页 |
附录G 方法依赖图 | 第83页 |