摘要 | 第1-4页 |
Abstract | 第4-8页 |
第一章 绪论 | 第8-12页 |
·研究背景 | 第8-9页 |
·国内外研究现状 | 第9-10页 |
·研究问题 | 第10-11页 |
·论文工作及组织结构 | 第11-12页 |
第二章 基于别名分析的 Java 程序错误诊断技术 | 第12-21页 |
·软件维护 | 第12-14页 |
·软件维护的定义与分类 | 第12-13页 |
·程序维护中的纠错性维护 | 第13-14页 |
·别名分析技术 | 第14-20页 |
·Java中别名关系的表示 | 第14-16页 |
·别名分析方法 | 第16页 |
·别名分析中的数据结构 | 第16-20页 |
·控制流图 | 第17-18页 |
·方法调用图与方法依赖 | 第18-19页 |
·别名关系图和对象类型表 | 第19-20页 |
·本章小结 | 第20-21页 |
第三章 面向错误诊断的别名分析相关分析与设计 | 第21-39页 |
·面向对象程序中别名引起的问题 | 第21-23页 |
·面向对象程序 Java 中的别名分析问题 | 第23-24页 |
·别名分析步骤 | 第24-26页 |
·对象类型表 | 第26页 |
·类内别名分析方法 | 第26-35页 |
·带异常结构的控制流分析 | 第26-30页 |
·流敏感的别名分析 | 第30-33页 |
·别名信息传播规则分析 | 第30页 |
·方法内别名计算规则分析 | 第30-32页 |
·方法间别名计算规则与算法设计 | 第32-33页 |
·别名关系图分析 | 第33-35页 |
·基于需求的类间别名分析方法 | 第35-37页 |
·实例成员访问分析与计算 | 第35-36页 |
·类间别名计算分析 | 第36-37页 |
·本章小结 | 第37-39页 |
第四章 基于 Eclipse 的 Java 程序错误诊断工具实现 | 第39-62页 |
·别名分析工具简介 | 第39-40页 |
·抽象语法树 | 第40-41页 |
·程序静态信息的提取 | 第41-46页 |
·静态信息的数据结构 | 第42-43页 |
·变量和方法调用信息的获取 | 第43-45页 |
·定值和引用信息的获取 | 第45-46页 |
·方法调用图构造 | 第46-47页 |
·类内方法的别名信息处理 | 第47-48页 |
·方法内别名信息获取 | 第48-54页 |
·赋值语句的别名分析处理 | 第48-50页 |
·含初始化的指针别名声明语句的处理 | 第50页 |
·别名关系的消除与合并 | 第50-51页 |
·各种控制流语句的处理 | 第51-53页 |
·条件语句 | 第52页 |
·循环语句 | 第52页 |
·跳转语句 | 第52-53页 |
·异常处理结构 | 第53页 |
·方法内别名信息的存储处理 | 第53-54页 |
·方法间的别名信息获取 | 第54-56页 |
·指针别名信息从调用点向被调用函数的传播 | 第54-55页 |
·方法调用点后指针别名信息的获取 | 第55-56页 |
·别名关系图构造 | 第56-58页 |
·基于需求的别名信息获取 | 第58-59页 |
·实验检验与分析 | 第59-61页 |
·实验代码选择 | 第59-60页 |
·实验结果与分析 | 第60-61页 |
·本章小结 | 第61-62页 |
第五章 结束语 | 第62-64页 |
·本文工作总结 | 第62-63页 |
·进一步研究方向 | 第63-64页 |
致谢 | 第64-65页 |
参考文献 | 第65-68页 |
作者在读期间的研究成果 | 第68-69页 |